pb formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : pb formulaire

Re: pb formulaire

par or 1 » 12 juin 2018, 21:56

un champ de type file ne se retrouve pas dans $_POST mais dans $_FILES

Re: pb formulaire

par quattro » 12 juin 2018, 21:36

bonjour
j'ai donc fait ceci :

Code : Tout sélectionner

// Si le formulaire est soumis if(isset($_POST['valide'])) { print_r($_POST['photo']); } else { echo "Veuillez enregistrer tous les champs"; }
quand je rempli tous les champ du formulaire, je valide, message d'erreur à ce niveau du POST :
Notice: Undefined index: photo in C

Re: pb formulaire

par or 1 » 08 juin 2018, 17:48

comme cela a été dit, il faut faire du debug, par exemple, mettre un else avec un echo pour ce if :
if (!empty($_POST['nom']) & !empty($_POST['prenom']) & !empty($_POST['qualif']) & !empty($_POST['photo']) &!empty($_POST['titre']))

et ensuite, réviser ces opérateurs logiques.

Re: pb formulaire

par quattro » 08 juin 2018, 16:51

Aucun message d'erreur, quand je valide le formulaire se vide mais aucun message d'erreur

Re: pb formulaire

par @rthur » 08 juin 2018, 16:21

Il va falloir que tu fasses un peu de debug de ton côté pour pouvoir nous dire à quelle ligne dans ton code ça ne fonctionne pas comme tu veux, quel est le message d'erreur si il y en a un, et ce que tu as essayé pour le corriger

pb formulaire

par quattro » 08 juin 2018, 13:17

bonjour
j'ai un soucis lorsque je valide mon formulaire, rien ne s'enregistre dans la base ?
code HTML :

Code : Tout sélectionner

<form method="post" action="../page/principal.php" enctype="multipart/form-data"> <label for="nom">Nom</label> <input type="text" id="nom" name="nom" placeholder="Votre nom.."> <label for="prenom">Prenom</label> <input type="text" id="prenom" name="prenom" placeholder="Votre prenom.."> <label for="qualif">Qualification</label> <select name="qualif"> <option value="Responsable">Responsable</option> <option value="Technicien">Technicien</option> </select> <label for="mon_fichier">Fichier (tous formats | max. 2 Mo) :</label><br /> <input type="hidden" name="MAX_FILE_SIZE" value="2000000" /> <input type="file" name="photo" id="mon_fichier" /><br /> <label for="titre">Titre du fichier (max. 50 caractères) :</label><br /> <input type="text" name="titre" value="Titre du fichier" id="titre" /><br /> <input type="submit" name="valide" value="Enregister"> </form>
code php :

Code : Tout sélectionner

<?php // Si le formulaire est soumis if(isset($_POST['valide'])) { //si les champs ne sont pas vide if (!empty($_POST['nom']) & !empty($_POST['prenom']) & !empty($_POST['qualif']) & !empty($_POST['photo']) &!empty($_POST['titre'])) { $inNom = $_POST['nom']; $inPrenom = $_POST['prenom']; $inQualif = $_POST['qualif']; $inPhoto = $_POST['photo']; $inTitre = $_POST['titre']; // test si le fichier a bien été envoyé et s'il n'y a pas d'erreur if (isset($_FILES[$inTitre]) AND $_FILES[$inTitre]['error'] == 0) { // test si le fichier n'est pas trop gros if ($_FILES[$inTitre]['size'] <= 2000000) { // test si l'extension est autorisée $infosfichier = pathinfo($_FILES[$inTitre]['name']); $extension_upload = $infosfichier['extension']; $extensions_autorisees = array('jpg', 'jpeg', 'png'); if (in_array($extension_upload, $extensions_autorisees)) { // On peut valider le fichier et le stocker move_uploaded_file($_FILES[$inTitre]['tmp_name'], 'uploads/' . basename($_FILES[$inTitre]['name'])); echo "L'envoi a bien été effectué !"; } } } // On se connecte à la Bdd include('../page/connection.php'); // Enregistrement des valeurs dans la Bdd $req = $bdd->prepare('INSERT INTO entree_personnel(nom, photo, prenom, qualif, titre) VALUES(:nom, :photo, :prenom, :qualif, :titre)'); $req->execute(array('nom' => $inNom,'photo' => $inPhoto,'prenom' => $inPrenom,'qualif' => $inQualif,'titre' => $inTitre)); echo "Bienvenue..." ; print_r($req->errorInfo()); } } else { echo "Veuillez enregistrer tous les champs"; } // Je me deconnecte $req = null; ?>