Testen, ob Abfrage möglich

dsNDesign

Erfahrenes Mitglied
Hei,
ich habe eine Nummer, welche eventuell in einer MySQL-Datenbank gespeichert ist. Die Nummer in der Datenbank ändert sich öfters, deswegen möchte ich überprüfen, ob meine Nummer, die ich momentan habe, in der Datenbank vorhanden ist. Wenn sie vorhanden ist, soll nichts weiteres passieren. Wenn sie jedoch nicht vorhanden ist, soll ein Befehl ausgeführt werden.

Die Nummer, die ich habe, wird zuvor über "$_GET" aus der Adresszeile geholt. Diese soll nun mit einer Tabelle auf verfügbarkeit überprüft werden.

Kann mir dabei einer helfen?

Gruß
 
Grüße,

PHP:
<?php
@$db = new mysqli('***', '***', '***', '***');

//URL-Parameter auslesen
$meineVariable = $_GET['***'];
//Abfrage
$Abfrage = mysqli_query($db, "SELECT *** FROM *** WHERE *** IN ('$meineVariable')");
$Anzahl = mysqli_num_rows($Abfrage);

if($Anzahl >= 1 ) {
} else {
//irgendwas machen
}

?>

müsste so funktionieren - Sternchen natürlich noch durch deine Angaben ersetzen.
P.S. ist nicht getestet.
 
Hallo,

einen kleinen Verbesserungsvorschlag:
Da nur eine Zahl abgefragt werden muss und diese einen Integer darstellt, würde ich es so lösen:
Ausserdem halte ich persönlich nicht viel von OOP in PHP, da dieses meiner Erfahrung nach brutal langsam ist, ist aber größtenteils geschmackssache. Ausserdem wird die Datenbankverbindung nur geöffnet, nicht geschlossen.
Des weiteren wird auch nicht überprüft, ob die Datenbankverbindung klappt.

Mit OOP:
PHP:
<?php
function idAvailable($id) {
  try {
    @$db = new mysqli('***', '***', '***', '***');
  } catch ($exception) {
    die("Datenbankverbindung nicht möglich: " . $exception->getMessage());
  }

  //Abfrage
  $Abfrage = $db->query("SELECT *** FROM *** WHERE *** = " . $id);
  $Anzahl = $Abfrage->num_rows;
  
  $db->close();
  return ($Anzahl > 0);
}
?>

Standard:
PHP:
function idAvailable($id) {
  @$db = mysql_connect('***', '***', '***', '***');
  // host, user, passwort, datenbank
  
  if(!$db) {
    die("Keine Datenbankverbindung möglich: " . mysql_error());
  }
  
  // Abfrage
  $Abfrage = mysql_query("SELECT *** FROM *** WHERE *** = " . $meineVariable);
  $Anzahl = mysql_num_rows($Abfrage);
  mysql_close($db);
  
  return ($Anzahl > 0);
}
?>

Gruß
BK
 
Zuletzt bearbeitet:
Zurück