|
|
PHP Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
<?php define("SCRIPT", "http://deine-domain.de/index.php"); define("HOST", ""); define("USER", ""); define("PASSWORD", ""); define("DATABASE", ""); $_title = mysql_real_escape_string($_GET["title"]); mysql_connect(HOST, USER, PASSWORD); mysql_select_db(DATABASE); if ($_title != "") { $sql = "SELECT `title`, `text` FROM `table` WHERE `title` = '$_title'"; $result = mysql_query($sql) or die("MySQL Error ".mysql_errno()."<br />\n".mysql_error()."<br />\n".$sql); $count = mysql_num_rows($result); if ($count > 0) { $row = mysql_fetch_object($result); echo $row->text; } } else { $sql = "SELECT `title`, `text` FROM `table`"; $result = mysql_query($sql) or die("MySQL Error ".mysql_errno()."<br />\n".mysql_error()."<br />\n".$sql); while ($row = mysql_fetch_object($result)) { $title = $row->title; $text = $row->text; echo "<a href=\"".SCRIPT."?title=$title\">$title</a>"; } } ?> |
This post has been edited 1 times, last edit by "Jan Thurau" (Dec 24th 2011, 11:15pm)
Okay, heißt die Variable wird schonmal korrekt befüllt.
Du könntest jetzt zB. mal ausgeben lassen, was $count ist. Ist es größer als 1, klappt zumindest die Datenabfrage und es kommen Ergebnisse zurück - dann einfach mal $row durch var_dump ausgeben lassen. Wenn nicht, könntest du mal $sql ausgeben lassen.
Prinzipiell hilft es mir beim Debuggen immer, in jeder IF-Abfrage über die("h") (o.Ä.) rauszufinden, ob die Bedingung zutrifft. Also du könntest zB. nach if ($count > 0){ ein die("h") machen. Sollte dieses "h" ausgegeben werden, ist $count schonmal größer als 0 und der Fehler ist weiter eingegrenzt.
Ansonsten könnte auch ein ERROR_REPORTING(E_ALL) in der ersten Zeile helfen, damit du mehr Fehlermeldungen von php erhälst.

Quoted
Wenn nicht, könntest du mal $sql ausgeben lassen
|
|
PHP Quellcode |
1 |
define("SCRIPT", "PFAD ZUR DATEI"); |
|
|
PHP Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
<?php ERROR_REPORTING(E_ALL); define("SCRIPT", "XXX"); define("HOST", "localhost"); define("USER", "XXX"); define("PASSWORD", "XXX"); define("DATABASE", "XXX"); mysql_connect(HOST, USER, PASSWORD); mysql_select_db(DATABASE); $_title = mysql_real_escape_string($_GET["post_title"]); if ($_title != "") { $sql = "SELECT `post_subject`, `post_text` FROM `mathe_posts` WHERE `post_subject` = '$_title'"; var_dump($sql); $result = mysql_query($sql) or die("MySQL Error ".mysql_errno()."<br />\n".mysql_error()."<br />\n".$sql); $count = mysql_num_rows($result); if ($count > 0) { die("h"); $row = mysql_fetch_object($result); echo $row->post_text; } } else { $sql = "SELECT `post_subject`, `post_text` FROM `mathe_posts` WHERE forum_id=5"; $result = mysql_query($sql) or die("MySQL Error ".mysql_errno()."<br />\n".mysql_error()."<br />\n".$sql); while ($row = mysql_fetch_object($result)) { $title = $row->post_subject; $text = $row->post_text; echo '<ul>'; echo "<a href=\"".SCRIPT."?title=$title\">$title</a>"; echo '</ul>'; } } ?> |
|
|
PHP Quellcode |
1 |
$_title = mysql_real_escape_string($_GET["post_title"]); |