Prisma Posté 15 Mai 2006 Posté 15 Mai 2006 Bonjour. Suis archi débutante en php Et j'espère être sur le bon forum (dans la bonne rubrique). Si je ne suis pas claire dans mon message, n'hésitez pas à me le dire:oops: Voilà. J'ai trouvé un script sur le net que j'ai trouvé très bien pour faire ce que je souhaitais : un annuaire pour le site de copropriété que je suis en train de créer. Voici le formulaire d'inscription tel qu'il était au tout début : http://pilotetest.free.fr/membre/ins.htm Je l'ai adapté en rajoutant des champs : <form action="inserer.php" method="post" enctype="multipart/form-data"><div align="center"><center><table border="0" cellpadding="0" cellspacing="0" width="42%" bgcolor="#415A8C" bordercolor="#FFFFFF"> <tr> <td width="40%"><font size="2" color="#FFFFFF">Civilité</font></td> <td><select name="civilite" size="1"> <option selected>-</option> <option>Mr</option> <option>Mme</option> <option>Mr et Mme</option> <option>Dr</option></select></td> </tr> <tr> <td width="40%"><p align="left"> <font color="#FFFFFF" size="2">Nom *</font></p> </td> <td><p align="left"><font color="#FFFFFF" size="2"> <input type="text" size="40" name="prenom" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;"></font></p> </td> </tr> <tr> <td width="40%"><font size="2" color="#FFFFFF">Prénom *</font></td> <td><font color="#FFFFFF" size="2"> <input type="text" size="40" name="nom" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;"></font></td> </tr> <tr> <td width="40%"><font size="2" color="#FFFFFF">Statut</font></td> <td> <select name="statut" size="1"> <option selected>-</option> <option>propriétaire résidant</option> <option>propriétaire bailleur</option></select></td> </tr> <tr> <td width="40%"><font size="2" color="#FFFFFF">Bâtiment</font></td> <td> <select name="batiment" size="1"> <option selected>-</option> <option>A</option> <option>B</option> <option>C</option> <option>D</option> <option>Parking seul</option></select></td> </tr> <tr> <td width="40%"><font size="2" color="#FFFFFF">Etage</font></td> <td><font color="#000000" size="2"> <input type="text" size="15" name="etage" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;" tupe="text"></font></td> </tr> </tr> </td> <tr> <td colspan="2"> <p style="margin-top: 10px; margin-bottom: 10px" align="center"> <font size="2" color="#FFFFFF">Eléments qui seront mis en ligne si complétés</font></td> </tr> <tr> <td><font size="2" color="#FFFFFF">Téléphone</font></td> <td><font color="#000000" size="2"> <input type="text" size="20" name="telephone" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;" tupe="text"></font></td> </tr> <tr> <td><p align="left"><font color="#FFFFFF" size="2">Adresse E-mail</font></p> </td> <td><p align="left"><font color="#000000" size="2"> <input type="text" size="40" name="email" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;" tupe="text"></font></p> </td> </tr> </td> <td colspan="2"> </td> </tr> <tr> <td colspan="2"> <p style="margin-top: 10px; margin-bottom: 0" align="center"> <font size="2" color="#FFFFFF">Eléments qui resteront confidentiels et ne seront pas affichés</font></p> <p style="margin-top: 0; margin-bottom: 10px" align="center"> <font size="2" color="#FFFFFF"> mais utiles pour le Conseil Syndical.</font></td> </tr> <tr> <td valign="top"><font size="2" color="#FFFFFF">Téléphone fixe</font></td> <td><font color="#000000" size="2"> <input type="text" size="20" name="tel_fixe" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;" tupe="text"></font></td> </tr> <tr> <td valign="top"><font size="2" color="#FFFFFF">Téléphone portable</font></td> <td><font color="#000000" size="2"> <input type="text" size="20" name="tel_portable" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;" tupe="text"></font></td> </tr> <tr> <td valign="top"><font size="2" color="#FFFFFF">Fax</font></td> <td><font color="#000000" size="2"> <input type="text" size="20" name="fax" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;" tupe="text"></font></td> </tr> <tr> <td valign="top"><font size="2" color="#FFFFFF">Adresse E-mail</font></td> <td><font color="#000000" size="2"> <input type="text" size="40" name="adresse_mail" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;" tupe="text"></font></td> </tr> <tr> <td valign="top" colspan="2"> <p align="center" style="margin-top: 10px; margin-bottom: 10px"><font size="2" color="#FFFFFF">Eléments pour les membres élus au conseil syndical</font></td> </tr> <tr> <td valign="top"><font size="2" color="#FFFFFF">Première année d'élection</font></td> <td width="59%"><font color="#000000" size="2"> <input type="text" size="10" name="annee" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;" tupe="text"></font></td> </tr> <tr> <td valign="top"><font size="2" color="#FFFFFF">Année de la dernière élection</font></td> <td width="59%"><font color="#000000" size="2"> <input type="text" size="10" name="derniere" style="border: 1px solid #000000 font-family: Tahoma; font-size: 9pt;" tupe="text"></font></td> </tr> <tr> <td valign="top"><font size="2" color="#FFFFFF">Votre position dans le conseil syndical</font></td> <td width="59%"> <select name="membre_conseil" size="1"> <option selected>-</option> <option>président</option> <option>vice-président</option> <option>membre actif</option> <option>membre suppléant</option></select></td> </tr> <tr> <td valign="top" colspan="3"> <p style="margin-top: 10px; margin-bottom: 0" align="center"> <font color="#FFFFFF" size="2">Photo à joindre obligatoirement en format JPEG. </font></p> <p style="margin-top: 0; margin-bottom: 10px" align="center"> <font color="#FFFFFF" size="2">Le nom du fichier ne doit pas comporter d'espace ni d'accent.</font></tr> <tr> <td valign="top"><font color="#FFFFFF" size="2">Photo *</td></font> <td><input type=hidden name=MAX_FILE_SIZE value=50000000000><input type="file" size="20" name="pseudo_photo" style="border: 1px solid #000000"> </td></td> <td width="65%"> </td> </tr> <tr> <td colspan="2"><p align="center"><input type="reset" name="retablir" value="- Retablir -" style="border: 1px solid #000000"> <input type="submit" name="submit" value="- S'inscrire -" style="border: 1px solid #000000"></p> </td> </tr> </table> </center></div><p align="center"><font color="#FFFFFF" size="2">* Les champs précédés d'une (*) sont obligatoires. Merci de les compléter</font></p><p align="center"><font size="2" color="#FFFFFF"><a href="index.php"><font color="#FFFFFF">Retour à l'annuaire</font></a></font><br> </p></form> Dans cet annuaire, les inscrits seront de 2 catégories : ceux qui seront élus au Conseil Syndical et ceux qui ne le seront pas. Les données sont recueillies dans "inserer.php" qui sert à alimenter une base de données. Quand j'ai téléchargé puis installé ce script, j'ai remarqué que pour que l'inscription à l'annuaire soit validée, il fallait obligatoirement que le champ "photo" soit complété par celui qui souhaitait s'inscrire : donc upload obligatoire d'une photo. Le formulaire tel que je l'ai modifié contient 3 parties. Il se trouve ici : http://www.sevben-telesecretariat.com/trombinoscope/ins.htm Voici mes questions : Le caractère obligatoire concernant l'upload de la photo doit exister mais seulement pour la partie basse du formulaire (seuls les membres du conseil syndical devront uploader une photo) et non pas pour l'ensemble du formulaire comme ça l'est actuellement. Pourriez-vous m'indiquer s'il est possible de faire cela ? Quelle partie du code du formulaire d'inscription devrais-je modifier ? Faut-il faire une requête et, si oui, de quelle manière ? Devrais-je obligatoirement modifier les autres pages php qui sont "inserer.php", "index.php" et la partie admin ? Merci à l'avance pour votre aide et bravo pour ce forum.
iNCiTE Web Posté 15 Mai 2006 Posté 15 Mai 2006 C'est dans "inserer.php" qu'il faudra que tu testes si c'est un élu ou pas : si oui, alors tu testeras si la photo a bien été envoyée, si non tu passeras le test.
Prisma Posté 16 Mai 2006 Auteur Posté 16 Mai 2006 C'est dans "inserer.php" qu'il faudra que tu testes si c'est un élu ou pas : si oui, alors tu testeras si la photo a bien été envoyée, si non tu passeras le test. <{POST_SNAPBACK}> Merci Seb pour ta réponse. Oui j'avais saisi qu'il y avait une histoire de "condition" dans inserer.php à inclure. Le problème c'est que je ne sais pas vraiment comment coder à ce niveau. Ton aide ou toute aide me serait très précieuse. Voici le code de la page "inserer.php" dans l'état actuel : <?if(empty($prenom) OR empty($nom)){ echo"Aucun champ ne peut rester vide.<br><a href='java script:history.back(1)'>Cliquez ici pour revenir en arrière</a>"; exit();}include "config.php3";//on se connecte à la base de donnée$dbconnect = mysql_connect($host,$login,$pass) or die ("erreur de connexion");//on selectionne votre basemysql_select_db($db,$dbconnect) or die ("erreur de connexion base");//on défini une date$date = date("d-m-Y");if(exif_imagetype($pseudo_photo)){if (is_writeable ("photo")){copy($pseudo_photo, "photo/$pseudo_photo_name");print "Votre inscription à bien été enregistrée elle sera confirmée par l'administrateur<br><a href='index.php'>Retour à l'annuaire </a> ";//on insère le contenu du formulairemysql_query("INSERT INTO pseudo (id,date,civilite,prenom,nom,statut,batiment,etage, telephone,email,tel_fixe,tel_portable,fax,adresse_mail,membre_conseil,annee,derniere,pseudo_photo) VALUES ('','$date','$civilite','$prenom','$nom','$statut','$batiment','$etage','$telephone','$email','$tel_fixe', '$tel_portable','$fax','$adresse_mail','$membre_conseil','$annee','$derniere','$pseudo_photo_name') ") or die ("erreur insert ".mysql_error());}}//et on referme la connexionmysql_close();if(!exif_imagetype($pseudo_photo)){// si pas une imageecho "Ceci n'est pas une image !<br><a href='java script:history.back(1)'>Cliquez ici pour revenir en arrière</a>";}?> <br> Y a juste ce point d'upload obligatoire uniquement pour les membres du conseil qui me bloque. Sinon, tout marche parfaitement. Merci à l'avance pour vos réponses et bonne journée à tous !
Prisma Posté 17 Mai 2006 Auteur Posté 17 Mai 2006 Merci à vous tous de m'avoir aidée. Mon problème est réglé.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant