Insertion de données dans un tableau en php

Fermé
superwish - 2 févr. 2011 à 16:50
 superwish - 7 févr. 2011 à 14:21
Bonjour,
Dans le cadre d'un stage en entreprise, je dois pouvoir insérer des données provenant d'une liste déroulante et de zones de texte dans les cellules d'un tableau existant.
Mon code :
<?php
if ((($_POST['liste_nom'])=="") or (($_POST['liste_niveau'])=="") or (($_POST['montant'])=="") or (($_POST['nom'])==""))
echo "<script>alert('Vous devez remplir tous les champs pour ajouter une personne');</script>";
else
$clts[]=liste_niveau.text;
$clts[]=nom.text;
$clts[]=montant.text;
?>

liste_niveau est la liste déroulante.
nom et montant sont les deux zones de textes.
Merci d'avance pour votre aide.



A voir également:

2 réponses

Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 185
2 févr. 2011 à 19:52
Bonsoir,

je pense que tu confonds un peu PHP et JavaScript. Pour commencer, il faut bien séparer les choses : le JavaScript se déroule pendant la durée de vie d'une page, côté client ; le PHP se déroule sur le serveur, entre deux « vies » différentes de pages (ça peut être la même page).
À moins que tu utilises Ajax, il y a forcément un rechargement de la page quand tu fais appel à PHP.

C'est pourquoi, quand tu fais :
echo "<script>alert('Vous devez remplir tous les champs pour ajouter une personne');</script>"; 

le « alert » se produira juste après un rechargement de la page, et j'imagine que ce n'est pas ce que tu veux.

Ensuite :
$clts[]=liste_niveau.text; 

Ici, je suppose que tu veux récupérer la valeur de liste_niveau, mais tu le fais façon JavaScript alors qu'il faudrait le faire en PHP. Utilise les données POST, comme tu le fais au-dessus :
$clts[] = $_POST['liste_niveau'];


Voilà, j'espère que ces quelques infos t'aideront ;)
0
Bonjour,
Je n'ai pas encore étudié le Javascipt, je ne savais pas que j'en utilisais ^^
Je n'ai pas encore fais d'Ajax donc oui, l'alert se déroule à chaque fois que j'ouvre la page. Je pensais qu'avec la conditionnelle, ça se déroulerait que quand les champs étaient vides.
J'ai utilisé les données POST comme tu me le dis :

<?php
if ((($_POST['liste_nom'])=="") or (($_POST['liste_niveau'])=="") or (($_POST['montant'])=="") or (($_POST['nom'])==""))
echo "<script>alert('Vous devez remplir tous les champs pour ajouter une personne');</script>";
else
$clts[]=$_POST['liste_niveau'];
$clts[]=$_POST['nom'];
$clts[]=$_POST['montant'];
?>

mais les données ne s'insèrent toujours pas dans le tableau. Quand je clique sur "Ajouter", elle s'effacent des zones de texte mais c'est tout :(
0
C'est bon j'ai réussi à résoudre mon problème.
Merci de l'aide quand même.
0