| | | | |
| | |
| Gast
Beiträge: n/a
| hallo zusammen. Ich hab in PHP so einen Suchscript gemacht. Der Script soll 4 Datenbanken (dw_tutorials; dw_scripts; dw_grafik und dw_tests) auslesen und dann alles auflisten, was mit dem Suchwort übereinstimmt. Aber wenn man die Suche benutzt, dann werden alle Inhalte der 3 Datenbanken aufgelistet. $such ist das Suchwort. Könnt ihr den Fehler finden? Wenn ihr nicht durchblickt, dann teilt es mir bitte mit. Index 0 ist das normale auflisten, Index 1 ist wenn man den verkürzten Text vollständig lesen möchte. Die Includes enthalten auch die Zugangsdaten der Datenbank. Code: <?php
include('scripts/oben.php');
IF ($index == 0){
$login =0;
$abfrage = "SELECT * FROM dw_tutorials WHERE Uber LIKE '%$such%' or Beschreibung LIKE '%$such%' or Autor LIKE '%$such%'";
$result = mysql_db_query($dbname,$abfrage,$verbindung);
$anzahl1 = mysql_numrows($result);
$abfrage = "SELECT * FROM dw_scripts WHERE Uber LIKE '%$such%' or Beschreibung LIKE '%$such%' or Autor LIKE '%$such%'";
$result = mysql_db_query($dbname,$abfrage,$verbindung);
$anzahl2 = mysql_numrows($result);
$abfrage = "SELECT * FROM dw_tests WHERE Uber LIKE '%$such%' or Beschreibung LIKE '%$such%'";
$result = mysql_db_query($dbname,$abfrage,$verbindung);
$anzahl3 = mysql_numrows($result);
$abfrage = "SELECT * FROM dw_grafik WHERE Uber LIKE '%$such%' or Beschreibung LIKE '%$such%' or Autor LIKE '%$such%'";
$result = mysql_db_query($dbname,$abfrage,$verbindung);
$anzahl4 = mysql_numrows($result);
echo "
<font class=font01>
$anzahl Suchergebnisse:
<table border=0 cellspacing=0 cellpadding=0 width=80% align=center>";
$abfrage = "SELECT * FROM dw_tutorials WHERE Uber LIKE '%$such%' or Beschreibung LIKE '%$such%' or Autor LIKE '%$such%'";
$result = mysql_db_query($dbname,$abfrage,$verbindung);
$anzahl = mysql_numrows($result);
$a;
while($anzahl > $a){
$id= mysql_result($result,$a, ID);
$uber= mysql_result($result,$a, Uber);
$link = mysql_result($result,$a, Link);
$besch= mysql_result($result,$a, Beschreibung);
$von= mysql_result($result,$a, Von);
echo "
<tr>
<td width=100%>
$uber
<font class=font01>von $von
$besch[mehr...]
<hr></td>
</tr>";
$a++;
}
$abfrage = "SELECT * FROM dw_scripts WHERE Uber LIKE '%$such%' or Beschreibung LIKE '%$such%' or Autor LIKE '%$such%'";
$result = mysql_db_query($dbname,$abfrage,$verbindung);
$anzahl = mysql_numrows($result);
$a;
while($anzahl > $a){
$id= mysql_result($result,$a, ID);
$uber= mysql_result($result,$a, Uber);
$link = mysql_result($result,$a, Link);
$besch= mysql_result($result,$a, Beschreibung);
$von= mysql_result($result,$a, Von);
echo "
<tr>
<td width=100%>
$uber
<font class=font01>von $von
$besch[mehr...]
<hr></td>
</tr>";
$a++;
}
$abfrage = "SELECT * FROM dw_tests WHERE Uber LIKE '%$such%' or Beschreibung LIKE '%$such%'";
$result = mysql_db_query($dbname,$abfrage,$verbindung);
$anzahl = mysql_numrows($result);
$a;
while($anzahl > $a){
$id= mysql_result($result,$a, ID);
$uber= mysql_result($result,$a, Uber);
$link = mysql_result($result,$a, Link);
$besch= mysql_result($result,$a, Beschreibung);
$von= mysql_result($result,$a, Von);
echo "
<tr>
<td width=100%>
$uber
<font class=font01>von $von
$besch[mehr...]
<hr></td>
</tr>";
$a++;
}
$abfrage = "SELECT * FROM dw_grafik WHERE Uber LIKE '%$such%' or Beschreibung LIKE '%$such%' or Autor LIKE '%$such%'";
$result = mysql_db_query($dbname,$abfrage,$verbindung);
$anzahl = mysql_numrows($result);
$a;
while($anzahl > $a){
$id= mysql_result($result,$a, ID);
$uber= mysql_result($result,$a, Uber);
$link = mysql_result($result,$a, Link);
$besch= mysql_result($result,$a, Beschreibung);
$von= mysql_result($result,$a, Von);
echo "
<tr>
<td width=100%>
$uber
<font class=font01>von $von
$besch[mehr...]
<hr></td>
</tr>";
$a++;
}
echo "
</table>
<font class=font01>developerworld.de Suche
";
} // Ende Index 0
IF ($index == 1){
$login =0;
$abfrage = "Select * from $tabelle where ID = '$id'";
$result = mysql_db_query($dbname,$abfrage,$verbindung);
echo "
<table border=0 cellspacing=0 cellpadding=0 width=80% align=center>";
$id= mysql_result($result,$a, ID);
$uber= mysql_result($result,$a, Uber);
$link = mysql_result($result,$a, Link);
$besch= mysql_result($result,$a, Beschreibung);
$von= mysql_result($result,$a, Von);
echo "
<tr>
<td width=100%>
<font size=2>$uber
<font class=font01><font size=2>$besch<font size=1>
eingetragen von $von</td>
</tr>";
echo "</table>";
} // Ende Index 1
include('scripts/unten.php');
?>
|
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Gast
Beiträge: n/a
| Dieses Script deutet eindeutig auf einen Anfänger hin, das ist, sorry, grausam ohne Ende. Du solltest erst mal das komplette Script überarbeiten. Die endlos vielen "Select *"-Abfragen sind absolut nicht nötig und zudem schlimm: 16.14. Warum soll ich nicht SELECT * schreiben? http://www.php-faq.de/q/q-sql-select.html Und mysql_result in einer Schleife zu benutzen, ist ebenfalls ein Performance-Killer. Da werden jeweils 5 Zugriffe für einen Datensatz gemacht, statt einen Datensatz mit mysql_fetch_array zu holen. Und dann kommt noch dazu, dass mysql_db_query veraltet ist, statt dessen sollte man mysql_select_db und mysql_query benutzen. Wenn du das alles korrigiert hast, dann wird sich vermutlich dein Problem von alleine lösen. Gruß phpfan |
| | |
| Gast
Beiträge: n/a
| ich mach mal den code farbig: PHP-Code: |
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Fragen zum Suchscript | Hilfloser | PHP Tipps 2006 | 3 | 04.06.2006 19:34 |
| Problem mit Suchscript | PHP Tipps 2007 | 5 | 28.12.2005 17:12 | |
| Suchscript | Beitragsarchiv | 3 | 14.07.2005 09:03 | |
| Suchscript mit und/oder Auswahlen | PHP Tipps 2005 | 3 | 06.01.2005 21:50 | |
| [Erledigt] hilfe zum suchscript | PHP-Fortgeschrittene | 7 | 17.12.2004 22:34 | |
| [Erledigt] kleines suchscript | PHP Tipps 2004-2 | 2 | 25.11.2004 02:00 | |
| Probleme mit nem Suchscript | PHP Tipps 2004-2 | 5 | 23.11.2004 12:03 | |
| [Erledigt] problem mit suchscript | PHP Tipps 2004 | 3 | 04.11.2004 15:53 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| php suchscript datenbank, mysql_db_query() veraltet, suchscript was möglichkeiten auflistet |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.