Mon problème est le test de l'existence des variables avec isset!!
Dans ce formulaire on peut avoir un ou plusieurs choix!!
Seulement quand je fais isset($_POST['produit1'] and
isset($_POST['produit2'] and isset($_POST['produit3']) rien ne se passe
( pas d'insertion ou de mise jour dans ma base) car on ne coche
pas forcément toutes les cases ( ceci , je l'ai bien compris)!!
Si je mets pas ce test, il me dit ensuite un message de ce style Notice: Undefined index: product1 in e:\perso\site\modif_client.php on line 44 quand je veux cocher les produits 2 et 3 mais l'insertion dans la base se fait correctement!!
J_G
Messages postés1406Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention28 août 200710 14 déc. 2005 à 16:05
Note : ce que dis antho est vrai, et doit être aussi fait dans mon exemple...
if( isset($_POST['arreglo']) and is_array($_POST['arreglo']) ) {
foreach( $_POST['arreglo'] as $k=>$v) {
echo "Vous avez coché $k et ça valeur est $v
\n";
}
}
J_G
Messages postés1406Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention28 août 200710 14 déc. 2005 à 19:07
Tout Faux !
Je flaire, et peux me tromper, que tu n'a pas compris ce qu'est une table MySQL.
J'ai aussi comme l'impression que tu ne sais pas ce que veux dire "foreach". Et la j'ai moins la sensation de me tromper...
Didactiquement, je devrais t'engueler séverement en te disant qu'on
n'utilise pas PHP et MySQL sans avoir jeté un oeil attentif sur des
tutoriaux pour débutant !
(La signature d'Anthonomicro en compte deux jolis).
Mais, ne voulant pas en savoir plus, je vais exceptionnelement te
cracher le code ! Ne prends pas la mauvaise habitude de faire faire tes
codes par les autres...
$champ = '(NOM_DU_CHAMP)'; // <= !!!!!
$table = 'clients';
$values = '';
$
first = true;
if( isset($_POST['produit']) and is_array($_POST['produit']) ) {
foreach( $_POST['produit'] as $k=>$v) {
if($first) $first = false;
else $values.= ',';
$values.='('.addslashes($v).')';
}
}
$query = "insert into $table $champ values $value;";
Tu ne comprends pas mon code ? Alors ne l'utilise pas !
Ou sinon, tu vas revenir ici dans 15 minutes...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Il manque la syntaxe du label mais ca , je le ferai apres!
Du coup , les 3 champs dans ma table que j'avais pour chaque produit est remplacée par le champ produit que j'ai créé
test de l'existence de produit:
if( isset($_POST['produit']) and is_array($_POST['produit']) ) {
foreach( $_POST['produit'] as $k=>$v) {
echo "Vous avez coché $k et ça valeur est $v
\n";
}
}
Requete pour insérer valeur des checkbox cochées:
mysql_query("INSERT into clients values('".$_POST['produit']."')");]