MrAdnanox
Messages postés5Date d'inscriptionvendredi 22 février 2008StatutMembreDernière intervention11 mai 2009
-
7 mai 2009 à 02:27
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 2015
-
11 mai 2009 à 10:06
Bonjour,
j'ai un petit problème qui me fatigue trop,
voila j'ai un formulaire ou il y'a des checkbox
pour sélectionnez les matières :
Arabe :
Francais :
Anglais :
Sciences :
Physique :
Mat :
Sociologie :
Philosophie :
Traduction :
Sport :
le formulaire retourne dans le OnSubmit la fonction AjouterProf() :
function AjouterProf()
{
var nom; var prenom; var email; var tel; var adresse; var pass;
nom = document.FormAjouterProf.nom.value;
prenom = document.FormAjouterProf.prenom.value;
email = document.FormAjouterProf.email.value;
tel = document.FormAjouterProf.tel.value;
adresse = document.FormAjouterProf.adresse.value;
pass = document.FormAjouterProf.pass.value;
var matiere = new Array();
matiere = document.FormAjouterProf.matiere;
var niveau = new Array();
niveau = document.FormAjouterProf.niveau;
if(texte = file('ADMINISTRATION/js/ajouter-prof-mysql.php?nom='+nom+'&prenom='+prenom+'&email='+email+'&tel='+tel+'&adresse='+adresse+'&pass='+pass+'&matiere='+matiere+'&niveau='+niveau));
{
if(texte == 1)
{
writediv(' '+nom+' a bien ete ajouter a la liste des professeurs
');
return(false)
}
else if(texte == 2)
{
writediv(' Erreur ');
return(false)
}
else
writediv(texte);
}
}
j'envoie les deux tableau matiere et niveau
par GET au fichier php ajouter-prof-mysql.php :
mysql_connect("localhost", "root", "") or die ('Erreur : '.mysql_error() );
mysql_select_db("ecole") or die ('Erreur :'.mysql_error());
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 7 mai 2009 à 15:02
Bonjour,
c'est illisible (**)
mais bon, j'ai cru voir :
>>>ou il y'a des checkbox pour sélectionnez les matières....et tu fais var matiere new Array(); matiere document.FormAjouterProf.matiere;
et tu n'as pas plusieurs de matières ????
donc : laquelle ? le navigateur ne peut pas savoir.
si c'est le même name :
document. name_du_formulaire .name_des_checkbox.length c'est le nombre et tu utilises
document.name_du_formulaire.name_des_checkbox[index].value ou .checked
index variant de 0 à document.name_du_formulaire.name_des_checkbox.length-1
** la saisie wysiwyg utilisée n'est pas compatible avec ton navigateur
clique sur [../infomsg.aspx?ajout =&ID=1308953&txtmode=0 Si vous n'arrivez pas à saisir votre message, CLIQUEZ ICI pour revenir à une "TextBox classique"] en dessous le bouton "Ajouter"
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 10 mai 2009 à 09:57
var matiere = new Array();
matiere = document.FormAjouterProf.elements['matiere[]'];
fait un alert de matiere....
si tu veux mettre dans un array,
boucle :
matiere[index]=document.FormAjouterProf.elements['matiere[]'][index];
ou push matiere(document.FormAjouterProf.elements['matiere[]'][index]);
Bul3
Messages postés4933Date d'inscriptionsamedi 1 juillet 2006StatutMembreDernière intervention 2 février 201516 9 mai 2009 à 09:53
ma question concernait ton script !
tu fais matiere=....
or matiere a été déclarée juste devant comme un array
essaye simplement ça :
var t=new Array();
t="toto";
alert(t.length);
>>passe cette array par GET a l'aide d'AJAX a un fichier php qui
va insérer
>>les valeur du formulaire a la BDD.
j'avais bien compris....
>>si se n'ai pas possible
de passer un array par GET POST,
un array ce n'est pas une chaîne de caractères et pour la transmission
( get ou post ) seules les chaînes de caractères sont permises
il faut donc d'abord le transformer
bêtement par exemple : "....&prm="+ton_array.join(",")+"..."
php $_GET['prm']='poste 0,poste 1,poste 2..... '
mais on doit pouvoir nettement mieux faire
@+