benni.: (PHP3 & MySQL) Anfänger (?)-Problem mit Datenbank-Auslesung!

Hallo!

Ich hab ein Problem:

Hier erst mal der Quellcode:

<script language="php">
$open_host = mysql_pconnect("localhost","root","hallo");
$select = mysql_select_db ("datenbank1",$open_host);
$query = "SELECT username FROM user where username="$eingabe;
$result = mysql_query($query,$open_host);

echo $result; // das funktioniert schon mal nicht

if ($result=$eingabe) {

...

}
mysql_close();
</script>

das geht so:
Der Benutzer gibt eine Seite vorher einen Name ein ($eingabe)
dann soll das mySQL aus der Tabelle user die namen (username)
ausladen und schauen, ob es vorhanden ist, dann einfach auf eine andere Seite springen.

Ich hab da so einige Probleme:

  • $query = "SELECT username FROM user where username="$eingabe;
    Dies funktioniert irgendiwe nicht

  • als result kommen nur Zahlen (2,3)

Danke für die Hilfe !
greetings,
benni.

  1. Ich hab da so einige Probleme:

    • $query = "SELECT username FROM user where username="$eingabe;

    ---------^

    was macht das da??

    es sollte heissen

    $query = "SELECT username FROM user WHERE usernmae = '$eingabe';";

    was dir auch noch fehlt ist das ergebniss, du hast ihn mal schaun lassen ob er das hat, ok er hat wahrscheinlich was, jetzt mußt du es nur noch auslesen:
    ich mach es dann immer so:

    $result = mysql_query($query);
    while (list($username_DB) = mysql_fetch_row($result)){
       echo "$username_DB<br>";
    }

    Das ergebniss ist eine liste von Usernamen die gleich $username ist (ob das sinnvoll ist ist eine andere frage)

    ein weiterfürendes beispiel:

    $query = "SELECT username,passwort FROM user WHERE usernmae = '$eingabe';";
    echo "<table>";
    $result = mysql_query($query);
    while (list($username_DB,$passwort) = mysql_fetch_row($result)){
       echo "<tr><td>$username_DB</td><td>$paswort</td></tr>";
    }
    echo "</table>";

    lg
    Ludwig

    1. hallo!

      Bei mir wird komischerweise nix angezeigt!
      Ich will eigentlich nur, dass wenn die Eingabe gleich ist wie irgendein username in der Datenbank, eine neue Seite geladen wird.

      greetings,
      benni.

      1. Ich will eigentlich nur, dass wenn die Eingabe gleich ist wie irgendein username in der Datenbank, eine neue Seite geladen wird.

        Dazu reicht auch "select count (*) from user where username = '$user';", das liefert dann *eine* Zahl als Ergebnis, und Du mußt nur noch testen, ob diese >= 0 ist.

        1. Alles Klar!

          Hat jetzt anders funktioniert!

  2. Hallo Benni!

    Da man nicht alles im Kopp haben kann ;-)

    dieser Link ist in meinen Bookmarks:

    http://dv.go.dlr.de:8081/info/mysql-tutorial/mysql.html#toc1

    Gruß
    Thomas