Puis-je faire quelque chose comme en PHP ?:
for($i=0; $i <= 5; $i++){
$anyway = $_POST['smth'].$i;
}
Comment puis-je utiliser ce Mysql insérer dans la fonction.
$sql = "INSERT INTO try (column_1) VALUES ('".$anyway."')";
Puis-je faire quelque chose comme en PHP ?:
for($i=0; $i <= 5; $i++){
$anyway = $_POST['smth'].$i;
}
Comment puis-je utiliser ce Mysql insérer dans la fonction.
$sql = "INSERT INTO try (column_1) VALUES ('".$anyway."')";
Tout d'abord, je vous recommande de stocker $ _POST [ 'smth'] dans une variable avant de l'utiliser dans votre boucle.
$smth = $_POST['smth']; //remember to sanitize strings taken from user input
$anyway = ""; // Declare $anyway before the for loop to avoid overwriting it
for($i=0; $i <= 5; $i++){
$anyway = $smth.$i;
}
Ensuite, vous devrez configurer et tester votre connexion de base de données:
$mysqli = new mysqli("example.com", "user", "password", "database");
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}
Enfin, préparer, lier et exécuter votre requête:
$stmt = $mysqli->prepare("INSERT INTO (column_1) VALUES (?)");
$stmt->bind_param("s", $anyway);
if (!$stmt->execute()) {
echo "Execute failed: (" . $stmt->errno . ") " . $stmt->error;
}
Le point d'utilisation d'une instruction préparée est d'utiliser' mysqli_stmt_bind_param' plutôt que de substituer des variables dans '$ sql'. – Barmar
Vous avez raison; J'ai mis à jour ma réponse pour inclure la fonction bind_param() ainsi que pour déclarer la variable $ anyway en dehors de la boucle for pour éviter de l'écraser. –
http: // php. net/manual/fr/mysqli.quickstart.prepared-statements.php – Jpsh
Vous réaffectez '$ anyway' à chaque fois dans la boucle. A la fin ce sera juste la valeur de la dernière itération, donc c'est juste $ $ anyway = $ _POST ['smth']. "5"; ' – Barmar