Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Das Einfügen von Werten in eine Tabelle innerhalb einer Funktion führt zu einem Fehler, aber wenn versucht wird, Werte in die Tabelle außerhalb einer Funktion einzufügen, funktioniert es einwandfrei

Das liegt daran, dass Sie keine $link-Variable im Funktionsbereich haben. (Das bedeutet, dass $link null ist) Sie können Ihre Verbindungsressource als Parameter an Ihre Funktion übergeben (was in Ihrem Fall die $link-Variable ist) oder global verwenden.

Das Übergeben der Verbindungsressource als Parameter sieht folgendermaßen aus:

$link = mysqli_connect("example.com","a","b","c");
 function foobar($link){
    $sql = 'INSERT INTO `table` (`field1`, `field2`) VALUES ("foo", "bar");';
    mysqli_query($link, $sql);
}