Om du använder parametriserade frågor måste du skicka värdet för parametern när du kör den förberedda frågan.
Du måste också execute
den förberedda frågan. Prepareringen skickar bara frågan till databasen för kompilering och optimering, den kör faktiskt inte frågan.
Om du också får ett fel i dessa databasåtkomstsats, finns det funktioner/metoder du bör använda för att visa det faktiska felmeddelandet som är mycket mer användbart än att mata ut något du själv hittar på som echo "Error creating SQL statement";
Även ;
är inte nödvändigt.
$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;
}