Stephan: Zeigt nichts an

Hallo,

ich habe hier eine Abfrage von einer MySQL Datenbank:

<?php

$host = "";
$db = "";
$user = "";
$passwd = "";

$connection = mysql_connect($host, $user, $passwd);
mysql_select_db($db, $connection);

$res = "SELECT * FROM Search-Engine WHERE titel LIKE %{$suche}% OR meta LIKE %{$suche}% OR beschreibung LIKE %{$suche}% ORDER BY pr DESC";

if($query = ""){
echo "Die Suche ergab kein Ergebnis.";
}
else{

echo "<table border=0>";

for ($i=0; $i<$num; $i++)
   {
      $ue = mysql_result($res, $i, "titel");
      $lk = mysql_result($res, $i, "link");
      $bs = mysql_result($res, $i, "beschreibung");

// Tabellenzeile mit -zellen
      echo "<tr> <td><b><a class=style3 href='$lk'>$ue</a></b></td></tr>";
      echo "<td>$bs</td> </tr>";
      echo "<tr><td>     </td></tr>";
   }

// Tabellenende
   echo "</table>";

}
?>

Sie funktioniert auch, bis auf, dass keine Ergebnisse angezeigt werden. Da ich schon alles versucht habe, denke ich, es liegt daran, dass er manchmal was großklein in der Tabelle stehen hat und ich es anders reinschreibe. Wie kann ich ihm sagen, dass er groß-kleinschreibung ignorieren soll?

Danke schon jetzt

Stephan

PS: Falls doch ncoh jemand einen Fehler entdeckt, bitte sagen wo...

  1. Nabend,

    $res = "SELECT * FROM Search-Engine WHERE titel LIKE %{$suche}% OR meta LIKE %{$suche}% OR beschreibung LIKE %{$suche}% ORDER BY pr DESC";

    SELECT * ist unschön, siehe: http://dclp-faq.de/

    if($query = ""){

    Woher kommt $query?

    $ue = mysql_result($res, $i, "titel");
          $lk = mysql_result($res, $i, "link");
          $bs = mysql_result($res, $i, "beschreibung");

    Komisch, dass dir hier kein Fehler ausgegeben wird von wegen dass $res keine gültige Ergebnis-Kennung sei.

    Bis denne,

    1. Hallo Hubert,

      SELECT * ist unschön, siehe: http://dclp-faq.de/

      Ein Link auf den Artikel der FAQ, auf den du dich beziehst, wäre sicherlich hilfreicher.

      Gruß,

      Johannes

      --
      ss:| zu:} ls:[ fo:} de:] va:} ch:) sh:( n4:| rl:( br:< js:| ie:{ fl:( mo:}
  2. $connection = mysql_connect($host, $user, $passwd);

    Keine Fehlerprüfung, keine Fehlermeldung.

    mysql_select_db($db, $connection);

    Keine Fehlerprüfung, keine Fehlermeldung.

    $res = "SELECT * FROM Search-Engine WHERE titel LIKE %{$suche}% OR meta LIKE %{$suche}% OR beschreibung LIKE %{$suche}% ORDER BY pr DESC";

    Überhaupt keine Datenbankabfrage. Keine Sicherung des SQL-Befehls mittels mysql_escape_string().

    if($query = ""){

    $query wurde vorher nie mit Inhalt belegt.

    for ($i=0; $i<$num; $i++)

    $num wurde vorher nie mit Inhalt belegt.

    $ue = mysql_result($res, $i, "titel");
          $lk = mysql_result($res, $i, "link");
          $bs = mysql_result($res, $i, "beschreibung");

    Benutze besser mysql_fetch_assoc() oder dergleichen. Vor Abfrage von Ergebnissen muß der SQL-Befehl mittels mysql_query() an die Datenbank geschickt werden.

    Sie funktioniert auch,

    Nein, dieses Skript kann nicht funktionieren.

    Gruß,
      soenk.e

    1. Ok, Danke, hast Du eine HP, wo eine Musterabfrage ist, ich brauche immer ewig für sowas :-(

      Stephan

      1. Nabend,

        Ok, Danke, hast Du eine HP, wo eine Musterabfrage ist, ich brauche immer ewig für sowas :-(

        Du möchtest sagen, du kennst das Manual nicht? http://php3.de/manual/

        Bis denne,