kornerklaus
07-11-2006, 18:19
Ich habe die 3 Dateien erstellt. Die Datenbank und die Tabelle werden auch angelegt.
Aber ich habe ein Problem mit der gb.php
Wenn ich auf den Link "Neuer Beitrag" klicke. Passiert nichts außer das in der Adresszeile statt:
http://localhost/xampp/gastebuch/gb.php
das hier steht:
http://localhost/xampp/gastebuch/gb.php?aktion=edit
Desweiteren kann ich auch nicht zwischen den einzelnen Seiten hin und her wechseln. Das funktioniert auch nicht.
Wenn ich error_reporting() benutze bekomme ich auch keine Fehlermeldung.
Register_globals steht auf ON.
Ich benutze Xammp wenn das hilft.
Kann mir jemand helfen.
danke im voraus.
jahlives
07-11-2006, 18:33
Ohne etwas Quellcode ist heiteres Raten angesagt... Und meine Glaskugel habe ich zu Hause vergessen :D
Gruss
tobi
kornerklaus
08-11-2006, 09:20
Hier mal der Quelltext der gb.php:
<?php
include('var.inc.php');
if (!isset($aktion))
{
$aktion = "show";
}
if (!isset($seite))
{
$seite = 1;
}
if ($aktion == "show")
{
echo"<html>".
"<head>".
"<title>Unser Gästebuch</title>".
"</head>".
"<body>";
$conn = mysql_connect($dbserver,$dbuser,$dbpass);
mysql_select_db($dbname,$conn);
$anfang = ($seite-1)*$beitraege+1;
$ende = $anfang+$beitraege-1;
$query = "SELECT * FROM gb ORDER BY datum DESC";
$result = mysql_query($query,$conn);
$gesamt = mysql_num_rows($result);
if ($gesamt == 0)
{
echo "Keine Beiträge vorhanden!";
}
$counter = 1;
if ($ende > $gesamt) { $ende = $gesamt; }
echo"<table cellspacing=\"2\" cellpadding=\"2\" border=\"1\" align=\"center\">";
while ($zeileholen = mysql_fetch_array($result,MYSQL_ASSOC))
{
if(($counter >= $anfang) AND ($counter <= $ende))
{
echo"<tr width=\"25%\">".
"<td>geschrieben von :<br>". stripslashes($zeileholen
["name"])."<br>eMail :". stripslashes($zeileholen["email"])."</td>".
"<td colspan=\"2\" width=\"75%\">Titel : ". stripslashes($zeileholen["titel"])."
</td>".
"</tr>".
"<tr>".
"<td>am ".$zeileholen["datum"]."</td>".
"<td colspan=\"2\">". stripslashes( nl2br( htmlentities
($zeileholen["beitrag"])))."</td>".
"</tr>";
}
$counter++;
}
echo "<tr><td>";
if ($seite == 1)
{
echo" ";
}
else
{
echo"<a href=\"gb.php?aktion=show&seite=".($seite-1)."\">zurück</a>";
}
echo"</td><td><a href=\"gb.php?aktion=edit\">neuer Beitrag</a></td><td>";
if ($ende >= $gesamt)
{
echo" ";
}
else
{
echo"<a href=\"gb.php?aktion=show&seite=".($seite+1)."\">weiter</a>";
}
echo "</td></tr>";
echo"</table>";
}
if ($aktion =="edit")
{
echo"<html>".
"<head>".
"<title>Unser Gästebuch</title>".
"</head>".
"<body>";
echo"Neuer Beitrag schreiben : ";
echo"<form action=\"gb.php?aktion=insert\" method=\"post\">".
"<table cellspacing=\"2\" cellpadding=\"2\" border=\"0\">".
"<tr>".
"<td>Name : </td>".
"<td><input type=\"text\" name=\"name\" size=\"30\" maxlength=\"50\"></td>".
"</tr>".
"<tr>".
"<td>eMail : </td>".
"<td><input type=\"text\" name=\"email\" size=\"30\" maxlength=\"50\"></td>".
"</tr>".
"<tr>".
"<td>Titel : </td>".
"<td><input type=\"text\" name=\"titel\" size=\"30\" maxlength=\"100\"></td>".
"</tr>".
"<tr>".
"<td>Beitrag : </td>".
"<td><textarea cols=\"70\" rows=\"20\" name=\"beitrag\"></textarea></td>".
"</tr>".
"<tr>".
"<td><input type=\"submit\" name=\"sub\" value=\"Eintragen\"></td>".
"<td><input type=\"reset\" name=\"res\" value=\"Reset\"></td>".
"</tr>".
"</table>".
"</form>";
}
if ($aktion == "insert")
{
$conn = mysql_connect($dbserver,$dbuser,$dbpass);
mysql_select_db($dbname,$conn);
$datum = date("d-m-Y H:i", time());
$query = "INSERT INTO gb VALUES ('', '". addslashes($name)."', '". addslashes($email)."',
'". addslashes($titel)."', '". addslashes($beitrag)."' ,'".$datum."')";
$result = mysql_query($query, $conn);
if (!$result)
{
die("Sorry, Datenbankeintrag hat nicht funktioniert");
}
mysql_close($conn);
header("Location:gb.php");
}
?>
kornerklaus
08-11-2006, 13:30
ich glaube das problem ist nicht der quelltext den andere php quelltexte kann ich auch nicht ausführen.
Ja, wenn du generell keine PHP-Scripte ausführen kannst, brauchst du dich nicht wundern. Aber auf was bezieht sich dann die Aussage das register globals auf ON steht?
Hast du nun PHP oder nicht?
kornerklaus
08-11-2006, 14:45
ja ich habe xampp installiert. also habe ich auch php.
aber das gästebuch läuft immer noch nicht.
Der server ist auch gestartet?
BTW: Brich mal bitte deinen Code oben um. Zum antworten muss ich immer Scrollen, das muss ja nicht sein.
kornerklaus
08-11-2006, 15:15
ich hoffe es ist so besser:)
und ja der server ist gestartet. es klappen auch andere quelltexte nur das gästebuch immer noch nicht. :(
Wie sieht der HTML-Quelltext der seite aus? Also das wass du siehst, wenn du im Browser auf Quelltext anzeigen gehst.
Hast du error_reporting(E_ALL)?
Hast du die Einstellung für register_globals in der php.ini eigenstädnig geändert?
Was für Scripte laufen und welche nicht?
kornerklaus
08-11-2006, 16:24
Danke für deine Hilfe hab das Problem schon gelöst.
Musste nur auf php4 umstellen dann ging es.
trotzdem danke
jahlives
08-11-2006, 16:29
Musste nur auf php4 umstellen dann ging es.
Spricht dafür dass du vorher ne 5-er Version hattest und dort ist globals per default auf off und nicht wie von dir behauptet auf on.
Ein einfaches echo phpinfo(); hätte dir diese Info auch gegen ;)
Gruss
tobi