2016-07-07 23 views
0

Ich muss überprüfen, ob ein Datensatz in einer Tabelle vor dem Hinzufügen vorhanden ist. Ich habe einige graben getan, und das ist, was die Leute auch immer wieder kommen:PHP - Überprüfen Sie die Tabelle, ob der Eintrag vorhanden ist

$result= mysql_query("SELECT id FROM mytable WHERE city = 'c7'"); 
     if(mysql_num_rows($result) == 0) { 
      // row not found, do stuff... 
     } else { 
     //row found, do other stuff... 
     } 

oder eine Variation dort.

Diese Logik ist genau das, was ich brauche, außer dass $ result nie ein positives Ergebnis liefert.

Der Datensatz existiert und sollte ein positives Ergebnis liefern.

Ich habe auch versucht

$sql="SELECT COUNT(email) FROM table WHERE email=$mail;"; 
$yesorno = mysqli_query($sql); 
    echo $yesorno ; 

als Test und das Echo gibt keinen Wert zurück.

+1

Verwenden mysql_ nicht, dass sie alte Funktionen sind und in PHP7 entfernt. Verwenden Sie PDO oder mysqli. – Devon

+0

Sie haben ein Ergebnis vom Typ% anstelle von $ result .. – scaisEdge

+0

Wenn Sie nur versuchen zu validieren, ob eine Zeile existiert, sollten Sie 'SELECT count (*)' verwenden und sich auf MySQL verlassen 0 oder 1. – Devon

Antwort

0

müssen Sie zunächst prüfen, ob die Abfrage vielleicht gelingen läuft gibt es ein Problem mit ihm

$Query = "Select id from mytable where city = 'c7' "; 
if($result = mysql_query($Query)) { 
if (mysql_num_rows($result) == 0) { 
// no rows found ; 
} else { 
// row exist ; 
} 
} else { 
echo "Query failed ". $Query; 
} 
Verwandte Themen