Okay...Fehlersuche
als erstes kam folgende Meldung:
Zitat:
Parse error: parse error, unexpected ')' in /****/*****/testing.php on line 54 (und 55)
|
Zeil 54 und 55 (waren):
PHP-Code:
$searchfrom = $_POST['searchfrom']);
$searchfor = $_POST['searchfor']);
Hab dann bei beiden die abschliesende Klammer weggemacht, dadurch kam kein Fehler mehr.
Nächster fehler der dann kam war:
Zitat:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /****/*****/testing.php on line 60
|
Zeile 60 (achtung habs leicht angepasst auf $searchresult):
PHP-Code:
$searchcount = mysql_num_rows($searchresult);
Gibt man nur 1 Option (Radiobuttons) an arbeitet das Script richtig und bringt den Fehler das man beides wählen soll...also eine Option
und ein Suchwort....das ist so ja völlig richtig (das gleiche kommt auch wenn man
nur ein Suchwort eingibt...auch richtig so)
Drückt man ohne irgendwas auszuwählen oder einzugeben auf den GO Knopf kommt wieder der Fehler von Zeile 60.
Gibt man beides korrekt an, erfolgt leider kein Suchergebniss.
Ich hab dann mal drüber geschaut und gesehen das bei der SQL Abfrage 2 Variablen sind die aber unterschiedlich aufgeführt sind und zwar $searchfrom und '$searchfor'.
Ich hab dann mal die 1. Variable auch in Hochkomatas geschrieben, was zumindest dazu geführt hat das es keine Fehlermeldung mehr gibt...jedoch bekomm ich auch kein Suchergebniss angezeigt.
Also wird irgendwie der Wert der Variablen $searchfrom und $searchfor nicht richtig übergeben...oder ?
PS:
Wenn man jetzt weder eine Suchoption noch ein Suchwort eingibt, wird alles was in der DB steht angezeigt....im Moment ist das nicht schlimm da es eh nur 2** Einträge gibt.
Hier nochmal der ganze Code (hab zur Übersicht die Kommentare entfernt):
PHP-Code:
<?php
if(empty($_POST['searchfrom']) && empty($_POST['searchfor']))
{
$searchfrom = $_POST['searchfrom'];
$searchfor = $_POST['searchfor'];
$searching = "SELECT * FROM songlist WHERE '$searchfrom' LIKE '$searchfor'";
$searchresult = mysql_query($searching);
$searchcount = mysql_num_rows($searchresult);
}
else {
$searchcount = 0;
$error = "Wählen Sie eine Suchoption aus und geben Sie einen Suchbegriff ein.";
}
?>
<table width="780" cellspacing="1" cellpadding="0" border="0" class="forumline" align="center">
<tr>
<td class="catHead" height="25" align="center" colspan="4"><img src="templates/xabbBlue/images/portal_punkt.gif" style="vertical-align:middle"> <span class="genmed" style="vertical-align:middle"><b>SuchBox / SearchBox</b></span> <img src="templates/xabbBlue/images/portal_punkt.gif" style="vertical-align:middle"></td>
</tr>
<tr>
<td class="row2" height="20" colspan="4" align="center"><span class="gensmall"><?php echo '<b>' . $searchcount . '</b>' . ' Einträge gefunden / Entries found' ?></span></td>
</tr>
<tr>
<td class="row2" height="30" colspan="4" align="center"><span class="gensmall" style="vertical-align:middle">
<form action="testing.php" method="post">
<input type="radio" name="searchfrom" value="artist">Artist
<input type="radio" name="searchfrom" value="album">Album
<input type="radio" name="searchfrom" value="title">Song
<input type="text" size="20" name="searchfor">
<input type="submit" value="GO">
</form>
</span></td>
</tr>
<tr bgcolor="#dadada">
<td height="20" width="30%" align="center"><span class="gensmall"><b>Artist</b></span></td>
<td height="20" width="30%" align="center"><span class="gensmall"><b>Album</b></span></td>
<td height="20" width="30%" align="center"><span class="gensmall"><b>Song</b></span></td>
<td height="20" width="10%" align="center"><span class="gensmall"><b>Time</b></span></td>
</tr>
<?php
if($searchcount > 0) {
while($row = mysql_fetch_array($searchresult))
{
echo "<tr bgcolor='#f5f5f5'><td height='20'><span class='gensmall'>".$row[artist]."</span></td><td height='20'><span class='gensmall'>".$row[album]."</span></td><td height='20'><span class='gensmall'>".$row[title]."</span></td><td height='20' align='center'><span class='gensmall'>".$row[duration]."</span></td></tr>\n";
}
}
elseif(!empty($error)) echo "<tr bgcolor='#f5f5f5'><td height='20' colspan='4' align='center'><span class='gensmall'>$error</span></td></tr>";
?>
</table>