Kan i finde fejlen?

Tags:    php

Hey..

Jeg arbejder med bogen "Lav dit eget CMS med dreamweaver, PHP og MySQL i dreamweaver.
Det ville være kanon hvis der var en der havde gennemgået bogen og fået det hele til at virke, som ville hjælpe mig, enten her, over MSN eller på TS/VT..

Jeg mangler en der kan finde en fejl i dette:

<?php virtual('/cms/Connections/intraweb.php'); ?>
<?php
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "edit")) {
$insertSQL = sprintf("INSERT INTO cms_sideindhold (overskrift, tekst1, billede, tekst2) VALUES (%s, %s, %s, %s)",
GetSQLValueString($_POST['overskrift'], "text"),
GetSQLValueString($_POST['tekst1'], "text"),
GetSQLValueString($_POST['billede'], "text"),
GetSQLValueString($_POST['tekst2'], "text"));

mysql_select_db($database_intraweb, $intraweb);
$Result1 = mysql_query($insertSQL, $intraweb) or die(mysql_error());

$insertGoTo = "index.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
}
?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Rediger topmenu</title>
<link href="/cms/css/style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.style1 {color: #000000}
-->
</style>
</head>

<body>
<table width="96%" border="0" class="layout">
<tr>
<td colspan="2" class="top style1"><h3>Administrationsområde</h3></td>
</tr>
<tr>
<td class="top1"> </td>
<td class="top1"> </td>
</tr>
<tr>
<td align="center" class="left"><p> </p>
<h5>Rediger Topmenu </h5>
<p><a href="index.php">Til admin-forside</a> </p></td>
<td class="middle"><p> </p>
<h5> Rediger topmenu </h5>
<form id="edit" name="edit" method="POST" action="<?php echo $editFormAction; ?>">
<table width="550" border="0" cellpadding="3">
<tr>
<td>Overskrift:</td>
<td><label for="textfield"></label>
<input name="overskrift" type="text" id="overskrift" size="70" /></td>
</tr>
<tr>
<td>Tekst 1: </td>
<td><textarea name="tekst1" cols="70" rows="6" id="tekst1"></textarea></td>
</tr>
<tr>
<td>Billede:</td>
<td><input name="billede" type="text" id="billede" size="70" /></td>
</tr>
<tr>
<td>Tekst 2: </td>
<td><textarea name="tekst2" cols="70" rows="6" id="tekst2"></textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="Submit" value="Gem data" /></td>
</tr>
</table>
<input type="hidden" name="MM_insert" value="edit">
</form>
<p> </p></td>
</tr>
</table>
</body>
</html>


Her er det PHP koden jeg tænker på.

Jeg er kommet til det sted i bogen hvor man skal til at arbejde med "server behaviors". Jeg har fået oprettet en skabelon til administrationssiden, som virker.
Efter jeg så har tilføjet "server behavior" viser browseren bare en blank side?..

Jeg har prøvet en masse ting, men uden resultat, bla. at starte fra ny.

Så nu håber jeg at en af jer kan hjælpe mig?..




1 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Den blanke side betyder at der er en fejl i php som forhindrer det i at køre. Alt før fejlen vil blive eksekveret. Du kan indsætte nogle echo "linie nr"; her og der også se hvor i scriptet den stopper. Evt udkommenter nogle ting du kunne have en fornemmelse af var fejlagtige og se om det virker.
evt udskriv dine variabler for at se om det er dem der er mærkelige.

It's the messy part. Fejlfinding.
Du har sikkert glemt et ";" eller har "=" istedet for "==" i en if(). Det er der jeg tit selv laver fejl ihvertfald.

Oh! også faldt jeg lige over virtual() prøv at se hvad doc siger om den:
"This function may be used on PHP files. However, it is typically better to use include() or require() for PHP files"

Det er en apache specifik funktion... prøv at bruge require istedet.



Indlæg senest redigeret d. 29.12.2006 15:26 af Bruger #11061
t