 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
29.05.2002, 20:24
|
#1
|
|
TP-Senior
Registriert seit: Mar 2002
Ort: Hamburg City
|
Problem mit PHP SuchSkript
Hallo,
habe mir ein Suchskript aus dem NEtz gezogen und es etwas angepaßt, leider läuft es nicht! Ich hoffe mir kann jemand weiterhelfen?
PHP-Code:
<?php
include('var.inc.php');
$conn = @mysql_connect($dbserver,$dbuser,$dbpass);
if (!$conn)
{
die ("Sorry, Verbindungsversuch zur Datenbank ist fehlgeschlagen !");
}
mysql_select_db($dbname,$conn);
echo "<table>";
$limit = 10;
if ($page == 0) $page=1;
$spalte = $_POST['Name'];
$sqlab = "SELECT Name,Nachname,Ort FROM adresse ";
$sqlab .= " WHERE $spalte LIKE '%$anf%' ORDER BY Nachname LIMIT ".($page-1)*$limit.",".$limit;
$result_articles = mysql_query ($sqlab,$conn);
list($sql_num,) = split("LIMIT",$sqlab);
$result_num = mysql_query ($sql_num,$conn);
$num = mysql_num_rows($result_num);
echo "
<table border=0>
<tr>
<td> </td>
<td><b>Bei der Suche nach <font color=red><b>$anf</b></font> wurden
<font color=red><b>$num</b></font> Einträge gefunden</b><p></td>
</tr>
</table>
";
echo "
<table border=0>
<tr><td><b>Spalte1</b></td><td><b>Spalte2</b></td></tr>
";
if ($num==0) echo "<tr><td><b>keine passenden Datensätze gefunden</b></td></tr>";
while ($row=mysql_fetch_array($result_articles))
{
echo "
<tr>
<td width=\"200\"><a href=\"show.php?Name=$row[Name]\">$row[Nachname]</a></td>
<td>$row[Ort]</td>
</tr>
";
}
echo "</table><br>";
if ($num > 0)
{
echo ceil($num/$limit);
if (ceil($num/$limit) == 1) echo " Seite";
else echo " Seiten";
echo "<br><br>";
if ($page > 1)
echo "<a href=\"$PHP_SELF?page=".($page-1)."&anf=".rawurlencode($anf)."\">vorherige</a> ";
if ($page < $num/$limit && $num > $num/$limit)
echo " <a href=\"$PHP_SELF?page=".($page+1)."&anf=".rawurlencode($anf)."\">nächste</a> ";
echo "<br>";
for ($i=1;$i<$num/$limit+1 and $num/$limit > 1;++$i)
{
if ($page == $i) echo "<b>[$i]</b> ";
else echo "<a href=\"$PHP_SELF?page=$i\">$i</a> ";
}
}
mysql_close($conn);
?>
Die Ausgabe sieht wie folgt aus:
Warning: Supplied argument is not a valid MySQL result resource in c:\programme\apache group\apache\htdocs\suche\suche.php on line 20
Bei der Suche nach wurden Einträge gefunden
Spalte1 Spalte2
keine passenden Datensätze gefunden
Warning: Supplied argument is not a valid MySQL result resource in c:\programme\apache group\apache\htdocs\suche\suche.php on line 39
Gruß Quixxz
|
|
|
30.05.2002, 12:35
|
#2
|
|
TP-Supporter
Registriert seit: Jun 2001
Ort: Berlin
|
Stimmen die feldnamen der tabelle und der name der tabelle mit den namen ueberein wie sie in der datenbank auch wirklich sind? In Gross- und kleinschreibung?
__________________
keep looking forward... Hydrax
|
|
|
30.05.2002, 13:43
|
#3
|
|
TP-Senior
Registriert seit: Mar 2002
Ort: Hamburg City
|
ja,die stimmen! Ich denke irgendwas stimmt mit:
$result_num = mysql_query ($sql_num,$conn);
$num = mysql_num_rows($result_num);
(Zeile 20/21) nicht.
|
|
|
30.05.2002, 14:20
|
#4
|
|
TP-Insider
Registriert seit: May 2002
Ort: Niederlande
|
Die Fehlermeldung kommt wahrscheinlich in der Zeile:
$result_num*=*mysql_query*($sql_num,$conn);*
zustande aber wenn der weg is haste ihn wahrscheinlich da:
list($sql_num,)*=*split("LIMIT",$sqlab);
Was solln das sein, ergibt für mich keinen sinn, $sql_num scheint ein sql Statement zu sein aber Du steckst es in das Sprachkonstukt List (list -- Weist Variablen zu, als wären sie ein Array www.php.net)!?!
Was kriegste eigentlich wenn de ma echo $sql_num; machst??? nen SQL-Statement???
|
|
|
30.05.2002, 15:52
|
#5
|
|
TP-Senior
Registriert seit: Mar 2002
Ort: Hamburg City
|
Hmm, so ganz genau kann ich dir das auch nicht sagen, habe das Skript von:
http://www.php-resource.de/showthrea...&threadid=7468
Also, wenn ich mir
$sql_num ausgeben lasse, dann zeigt er mir das sql statement an!(siehe ausgabe unten!). es hapert aber irgendwie an der where klausel, denn wenn ich diese auskommentiere, dann bekomme ich folgendes ergebnis:
SELECT Name,Nachname,Ort FROM Adresse
Bei der Suche nach wurden 4 Einträge gefunden
Spalte1 Spalte2
Weser Wandsbek
Kleinschmi Hamburg
asa dsfsdf
sd
usw usw
1 Seite
sieht gut aus! wie gesagt, irgendwie ist die where klausel nicht richtig. habs auch schon mit select (...) where $süpalte = name versucht, geht auch nicht! kannst du mir weiterhelfen?
|
|
|
30.05.2002, 17:09
|
#6
|
|
TP-Senior
Registriert seit: Mar 2002
Ort: Hamburg City
|
ok, ich habs!
die where klausel ist falsch!
muß wie folgt sein!
PHP-Code:
$spalte = $_POST['Name'];
$sqlab = "SELECT Name,Nachname,Ort FROM Adresse where Nachname like '%$spalte%' ORDER BY Nachname LIMIT ".($page-1)*$limit.",".$limit;
dann läufts!!!
Gruß
Quixxz
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 04:30 Uhr.
|
 |