Gibt es den User schon?

riddler2kone

Erfahrenes Mitglied
Hi!

Ich hab da jetzt ein coolen counter mit IP Sperre gemacht. wenn man einen user angibt, soll er den wert für diesen user anzeigen. gibt es den user nicht, soll er den angegebenen erstellen. dazu mus sich wissen, ob es diesen gibt. wie überprüf ich das?

PHP:
$werte = @MySQL_Query("SELECT * FROM sc_counter WHERE user='$user'");
$werte = @MySQL_Fetch_Array($werte);

danke!

Daniel
 
Zuletzt bearbeitet:
PHP:
$result = @mysql_query("SELECT * FROM sc_counter WHERE user='$user'");
if (mysql_num_rows($result)==0)
{
  // User existiert nicht
}
else
{
  // User existiert
}
 
Hmmm bei mir geht das aber nicht :(
Wenn ich das versuche anzuwenden, schreibt er zwar im Falle eines doppelten Namen die Fehlermeldung aber er schreibt die daten trotzdem in die Datenbank, wieso? Was ist falsch an meinem Script?

PHP:
    $insert = "INSERT INTO test (username,password) VALUES ('$name','$passwort')";
    $eintragen = mysql_query($insert);
    $usergibtes = mysql_query("SELECT * FROM test WHERE username='$name'");

    }
if (mysql_num_rows($usergibtes) == 0) {
echo $eintragen;
} else {
echo "User vorhanden!";
}
 
Zuletzt bearbeitet:
ich ahbs kurz vor der ersten antwort anders gelöst, so:

PHP:
include("mysql.php");

if($user) {

$werte = @MySQL_Query("SELECT * FROM sc_counter WHERE user='$user'");
$werte = @MySQL_Fetch_Array($werte);

$count_old = $werte[count];
$xuser = $werte[user];
$ip_old = $werte[ip];
$ip = $REMOTE_ADDR;

if(!$xuser=="") {

$count_new = $count_old + 1;

if(!$ip == $ip_old) {

@MySQL_Query("UPDATE sc_counter SET count='$count_new', ip='$ip' WHERE user='$user'");

}

echo " document.write('$count_new'); ";

} else {

if($multiuser=="0") { echo " document.write('Dieser Counter unterstützt kein Multiusing'); "; } else {

@MySQL_Query("INSERT INTO sc_counter (user,ip,count) VALUES ('$user','','1') ");

echo " document.write('Der Benutzer <i>$user</i> wurde erfolgreich erstellt.'); ";

}
}
}

PS: das mit multiuser ist eine am anfang gesetzte option (an=1 aus=0)
 
@Subwoover: Du machst zuerst den Eintrag, und nachher prüfst du erst, ob der User schon vorhanden ist... kann ja nicht klappen.
PHP:
<?
  $result = mysql_query("SELECT * FROM test WHERE username='$name'");
  if (mysql_num_rows($result)== 0)
    mysql_query("INSERT INTO test (username,password) VALUES ('$name','$passwort')");
  else
    echo "User bereits vorhanden!";?>
 
Bei mir geht das aber nicht... er schreibt zwar die fehlermeldung aber er trägt den user trotzdem in die tabelle ein...
 

Neue Beiträge

Zurück