Enregistrement de deux valeur array sous mysql [Résolu/Fermé]

- - Dernière réponse : jordane45
Messages postés
27002
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
10 décembre 2019
- 1 nov. 2018 à 21:47
bonjour a tous j'ai cree un script php qui enregistre un array sous mysql sur mon code j'affiche une liste des nombres et je l'enregistre sur ma table aa colonne a pour l'instant je veux ajouter une colonne b
pour saisir un array concerne des noms sur le meme script mais au moment de l'affichage la table s'affiche comme ca ctadir il enregistre dabor la colonne a avant b moi je veux les deux au meme temps merci d'avance

colonne a colonne b
1
2
3
nabil
steph
ibraam
mon code :


<input type="text" name="n">
<form method="post" action="essay.php">
  <?php 

$mysqli = new mysqli('localhost', 'root', '', 'location');

  $i=1;
  for($i=1;$i<=3;$i++){
 
  echo '
  <input type="text" name="a[]" value="'.$i.'"><br />'; // affichage 
  <input type="text" name="b[]" value="'.$n.'"><br />'; // affichage 
  }
?> 
<input type="submit" name="valide" value="valide"></form>

<?php
$mysqli = new mysqli('localhost', 'root', '', 'location');

$a= !empty($_POST['a']) ? $_POST['a'] : NULL;
$b= !empty($_POST['b']) ? $_POST['b'] : NULL;
if ((!empty($a)) and (!empty($b))) {
	$sqlvalues = array();
	foreach($a as $val) {
		$sqlvalues[] = "('$a')";
	}
$sqlval = array();
	foreach($b as $vl) {
		$sqlval[] = "('$b')";
	}
$sql = "INSERT INTO aa (a) VALUES ";
$sql .= join(",",$sqlvalues);

$sql2 = "INSERT INTO aa (b) VALUES ";
$sql2 .= join(",",$sqlval);
if((mysqli_query($mysqli, $sql)) and (mysqli_query($mysqli, $sql2))) {
    echo '<script language="javascript">';
	echo 'alert("Votre Compte Bien Crée");';
	echo 'window.location="home.php";';
	echo '</script>';
	
} else {
	echo '<script language="javascript">';
	echo 'alert("Erreur de Création");';
	echo 'window.location="home.php";';
	echo '</script>';
}}
?>
Afficher la suite 

6 réponses

Messages postés
27002
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
10 décembre 2019
318
0
Merci
Bonjour,
Essaye de comprendre ce que fait cette requête :
INSERT INTO tatable (colA, colB) VALUES ('val1','val2')

donc il faut que j'utilise INSERT INTO tatable (colA, colB) VALUES ('val1','val2') A LA PLACE DE

$sql = "INSERT INTO aa (a) VALUES ";
$sql .= join(",",$sqlvalues);

$sql2 = "INSERT INTO aa (b) VALUES ";
$sql2 .= join(",",$sqlval);
jordane45
Messages postés
27002
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
10 décembre 2019
318 -
A ton avis... si je t'en parle.... ce n'est pas pour rien...

Donc..OUI.
0
Merci
donc il faut que j'utilise INSERT INTO tatable (colA, colB) VALUES ('val1','val2')
par contre

$sql = "INSERT INTO aa (a) VALUES ";
$sql .= join(",",$sqlvalues);

$sql2 = "INSERT INTO aa (b) VALUES ";
$sql2 .= join(",",$sqlval);
0
Merci
Hhhhhh c bon chef merci
0
Merci
bonsoir jordane45 j'ai executer le requette que tu ma envoyer

INSERT INTO tatable (colA, colB) VALUES ('val1','val2')

mais le problem elle enregistre juste la dernier ligne du array pour les deux colonnes
merci
0
Merci
aiiiiider moi problem tjr existe cette requette oooohhhhh elle enregistre juste la derner ligne du array oh mon dieu je me sens tres fatigue pppfffff
<input type="text" name="n">
<form method="post" action="essay.php">
<?php

$mysqli = new mysqli('localhost', 'root', '', 'location');

$i=1;
for($i=1;$i<=3;$i++){

echo '
<input type="text" name="a[]" value="'.$i.'"><br />'; // affichage
<input type="text" name="b[]" value="'.$n.'"><br />'; // affichage
}
?>
<input type="submit" name="valide" value="valide"></form>

<?php
$mysqli = new mysqli('localhost', 'root', '', 'location');

$a= !empty($_POST['a']) ? $_POST['a'] : NULL;
$b= !empty($_POST['b']) ? $_POST['b'] : NULL;
if ((!empty($a)) and (!empty($b))) {
$sqlvalues = array();
foreach($a as $val) {
$sqlvalues[] = "('$a')";
}
$sqlval = array();
foreach($b as $vl) {
$sqlval[] = "('$b')";
}
$sql = "INSERT INTO aa (a,b) VALUES ('$val,''$vl')"; // ici ya quelque chose qui cloche

if((mysqli_query($mysqli, $sql)) and (mysqli_query($mysqli, $sql2))) {
echo '<script language="javascript">';
echo 'alert("Votre Compte Bien Crée");';
echo 'window.location="home.php";';
echo '</script>';

} else {
echo '<script language="javascript">';
echo 'alert("Erreur de Création");';
echo 'window.location="home.php";';
echo '</script>';
}}
?>
jordane45
Messages postés
27002
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
10 décembre 2019
318 -
Vas tu enfin utiliser les BALISES DE CODE ???!!!!
Je ne répondrai que lorsque tu auras posté correctement ton code !
0
Merci
C pas la plaine de me dire ça car si vous êtes pro ta déjà le code donc il faut juste lire mon message et me résoudre le problème mais vous êtes l un des personne qui mettre des procédure banale merci encore une fois sur le forum des bête
jordane45
Messages postés
27002
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
10 décembre 2019
318 -
J'ai la reponse mais en tant que moderateur je suis la aussi pour
Faire respecter les règles du forum.
Et si tu ne veux pas faire d'efforts... je n en ferai pas non plus !
Bonne soiree je clos la discussion.
Reviens quand tu auras compris que nous ne sommes pas a tes ordres...