Fehlerabfangen?

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Fehlerabfangen?

    Gehen wir davon aus das ich nach einer Eingabe des Users fragen. Bsp. seinen Benutzernamen. Gibt er ihn richtig ein ist ja alles okay aber was ist wenn er schwachsinn eingibt? Denn bei einer dieser Abfrage kommt man mit einem User einfach weiter den es nicht gibt. Hat jemand einen Tip wie man das abfangen kann?
    Code:
    <?php
    require("conf.php3");

    switch($id) {
    case 1: {

    $verbindung = mysql_connect ($host, $user, $pass);
    mysql_select_db($db,$verbindung);

    $sql="SELECT uid,name FROM xyd_user WHERE name='$user_name'";
    $res=mysql_query($sql,$verbindung);

    $my_he=mysql_fetch_array($res);
    $u_name=$my_he[name];
    $u_id=$my_he[uid];

    switch ($u_id) {
    case 0 : {
    echo "Zugriff genehmigt";
    echo "<br>userid: $u_id";
    echo "<br>name: $u_name";
    echo "<form action=copy.php3?id=2 method=post>";
    echo "<textarea rows=15 cols=35 name=value>";
    readfile("../xyd_php/inc/copyright.inc");
    echo "</textarea>";
    echo "<br><br><input type=submit name=sendi value=ändern></form>";
    echo "$value";
    break;}
    default
    echo "Zugriff verweigert";
    echo "<br>userid: $u_id";
    echo "<br>name: $u_name"; }
    }
    break; }
    case 2: {
    unlink("../xyd_php/inc/copyright.inc");
    $fp=fopen("../xyd_php/inc/copyright.inc","w");
    fwrite($fp, $value);
    fclose($fp);
    echo "<br>Änderung übernommen<br>";
    break; }
    default : {
    echo "<form action=copy.php3?id=1 method=post>";
    echo "<table border=0 cellspacing=0 cellpadding=0 width=><tr><td width=33%>";
    echo "Name:</td><td width=67%><input name=user_name type=text></td></tr><tr><td width=33%>";
    echo "Passwort:</td><td width=67%><input name=user_pass TYPE=PASSWORD></td></tr></table>";
    echo "<br><input type=submit name=sendi value='auf gehts'></form>";
    }
    }
    ?>

    php-Entwicklung | ebiz-consult.de
    PHP-Webhosting für PHP Entwickler | ebiz-webhosting.de
    die PHP Marktplatz-Software | ebiz-trader.de

  • #2
    Hat eine Query kein Ergebnis, so ist je nach MySQL-Version entweder der Rückgabewert von mysql_query oder die Anzahl der Ergebnisse 0 ... also:
    if (!$res || !mysql_num_rows($res)) echo 'Fehler';
    bzw.
    if ($res && $my_he = mysql_fetch_array($res)) echo 'Erfolg';

    -=* Titus *=-
    | php pro |
    |nerd for life|
    """""""""""""""

    the PHP resource

    Kommentar

    Lädt...
    X