Als u query's met parameters gebruikt, moet u de waarde voor de parameter doorgeven wanneer u de voorbereide query uitvoert.
Je moet ook execute
de voorbereide vraag. De voorbereiding geeft de query alleen door aan de database voor compilatie en optimalisatie, maar voert de query niet echt uit.
Ook als u een fout krijgt in deze databasetoegangsverklaring, zijn er functies/methoden die u zou moeten gebruiken om de daadwerkelijke foutmelding weer te geven, die veel nuttiger zijn dan het uitvoeren van iets dat u zelf verzint, zoals echo "Error creating SQL statement";
Ook de ;
is niet nodig.
$stmt = $conn->prepare("SELECT * FROM artist WHERE artID != ?");
if ( $stmt === false ){
echo $conn->error;
exit;
}
$stmt->bindParam('i', $some_variable)
$result = $stmt->execute();
if ( $result === false ) {
echo $stmt->error;
exit;
}