rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[PHP] validation d1 formulaire via phpmyadmin

kanabinch, le jeudi 7 février 2008 à 09:23:39
Bonjour,

Voilà j'ai besoin que qq'un qui me dise où est-ce que mon code cloche.
Il permet d'enregistrer un eleve grâce à un formulaire dans la base de donnée phpmyadmin.
Mon problème l'enregistrement dans la base de données ne fonctionne pas.

FORMULAIRE :
<form method="post" action="inscription.php">
<table>
<tr>
<td>Nom</td>
<td><input type="text" name="nom"></td>
</tr>

<tr>
<td>Prenom</td>
<td><input type="text" name="prenom"></td>
</tr>

<tr>
<td>Date de naissance</td>
<td><input type="text" size="10" name="dat_naiss">(jj/mm/aaaa)</td>
</tr>
</table>

<input type="submit" value="Valider" name="Valid">

</form>

CODE PHP (dans la même page):
<?php
include("inclusion/connexion.php");

if(isset($Valid))
{
if (empty($_REQUEST['nom']) || empty($_REQUEST['prenom']) || empty($_REQUEST['dat_naiss']))
die("ERREUR : tous les champs doivent etre remplis.");

$sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
VALUES ('".$_REQUEST['nom']."','".$_REQUEST['prenom']."','".$_REQUEST['dat_naiss']."')";

mysql_query($sql);

if (mysql_query($sql) != false)
print("eleve < ".$_REQUEST['nom']." > enregistré.");
else
print("Echec lors de la création de la fiche.");

mysql_close();
}
?>

Merci d'avance
Configuration: Windows XP
Internet Explorer 6.0
Répondre à kanabinch  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Alain_42, le jeudi 7 février 2008 à 09:32:58
Bonjour,

qqs erreurs: il faut récuperer par $_POST

Essayes comme ça:

<?php
include("inclusion/connexion.php");

if(isset($_POST['Valid']))
{
if (empty($_POST['nom']) || empty($_POST['prenom']) || empty($_POST['dat_naiss'])){

$sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
VALUES ('".$_POST['nom']."','".$_POST['prenom']."','".$_POST['d at_naiss']."')";

$enr=mysql_query($sql) or die ("Pb avec la requette :".mysql_error());// rajouté trace erreur

//if (mysql_query($sql) != false)  //comme ça c'est pas bon car tu fais deux fois la commande mysql_query
if($enr){ // sous entendu $enr true
	print("eleve < ".$_POST['nom']." > enregistré.");
}else{
	print("Echec lors de la création de la fiche.");
}
mysql_close();
}
}else{
	print "ERREUR : tous les champs doivent etre remplis.";
}
?> 
Répondre à Alain_42

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Alain_42, le jeudi 7 février 2008 à 11:08:06
Rebonjour,

En complement à mon précedent post:

essayes comme ça fichier inscription.php:


<html>
<?php
//int variables
$form_ok=0;
//recup des valeurs postées en passant la fonction htmlentities (protection contre codes malicieux, on ne sait jamais)
	// si tu ne comprends pas les 3 lignes ci dessous vas voir sur Google ou Exalead "PHP objet ternaire"
	$nom=isset($_POST['nom']) ? htmlentities($_POST['nom']) : "";
	$prenom=isset($_POST['prenom']) ? htmlentities($_POST['prenom']) : "";
	$date_naiss=isset($_POST['dat_naiss']) ? htmlentities($_POST['dat_naiss']) : "";

if(isset($_POST['Valid'])){
	
	
	if ($nom=="" || $prenom =="" || $date_naiss ==""){// si au moins un des champs est vide
		print "<font color=\"red\">ERREUR : tous les champs doivent etre remplis.</font>";
		
	}else{
		$form_ok=1;
		
		include("inclusion/connexion.php");
		$sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
		VALUES ('".$nom."','".$prenom."','".$prenom."')";

		$enr=mysql_query($sql) or die ("Pb avec la requette :".mysql_error());// rajouté trace erreur

		//if (mysql_query($sql) != false)  //comme ça c'est pas bon car tu fais deux fois la commande mysql_query
		if($enr){ // sous entendu $enr true
			print("Eleve < ".$_POST['nom']." > enregistré.");
		}else{
			print("Echec lors de la création de la fiche.");
		}
		mysql_close();
		
		}
}		
if($form_ok==0){// si premier affichage ou si saisies  non comformes on affiche le formulaire
?> 

	<form name="ma_form" method="post" action="inscription.php">
	<table>
	<tr>
	<td>Nom</td>
	<td><input type="text" name="nom" value="<?php print $nom; ?>"></td>
	<!-- value=".........." c'est pour que si une des saisies est non comforme ça réaffiche celles déja saisie  -->
	</tr>

	<tr>
	<td>Prenom</td>
	<td><input type="text" name="prenom" value="<?php print $prenom; ?>"></td>
	</tr>

	<tr>
	<td>Date de naissance</td>
	<td><input type="text" size="10" name="dat_naiss" value="<?php print $date_naiss; ?>">(jj/mm/aaaa)</td>
	</tr>
	</table>

	<input type="submit" value="Valider" name="Valid">

	</form>
<?php
}
?>
</html>
Répondre à Alain_42

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
kanabinch, le jeudi 7 février 2008 à 12:28:17
Merci d'avoir pris le temps de résoudre mon problème mais j'ai encore un problème

Il s'affiche :

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\directeur\inscription.php on line 75


72 $form_ok=1;
73 include("inclusion/connexion.php");
74 $sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
75 VALUES ('".$nom."','".$prenom."','".$prenom."')";
76
77 $enr=mysql_query($sql) or die ("Pb avec la requette :".mysql_error());
Répondre à kanabinch

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Alain_42, le jeudi 7 février 2008 à 13:20:29
Essayes avec:

$sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)  VALUES ('".$nom."','".$prenom."','".$date_naiss."')";


J'avais mis deux fois $prenom
et vérifies bien que tu n'ai pas une erreur dans la dernière ligne de ton fichier inclus "connexion.php"

un ; qui manque par exemple
Répondre à Alain_42

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
kanabinch, le jeudi 7 février 2008 à 13:42:31
J'ai rectifier pour les 2 $prenom, faute d'inattention mais ça fait toujours la même chose.
Si il y avait eu une erreur au niveau de la requette il y aurait écrit "Pb avec la requette" mais ce n'est pas le cas
pour mon inclusion tout est correct, il ne manque pas de ";" non plus.

Savez-vous ce que signifie :
"Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\directeur\inscription.php on line 77"
(77 correspond toujours à la même ligne)
?
Répondre à kanabinch

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
kanabinch, le jeudi 7 février 2008 à 13:53:56
J'ai 2/3 petites erreurs et maintenant qd je saisi nom, prenom et date de naissance et que je fais Valider ça me dit
"eleve < toto > enregistré."
Par contre qd je vais ds la base de données une ligne correspond à cet enregistrement mais sans les données (vide)
Répondre à kanabinch

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Alain_42, le jeudi 7 février 2008 à 13:55:22
Cette erreur signifie que php ne comprend pas une varaible.

C'est signe d'une erreur de syntaxe quelque part , en général ligne précédente.

La je n'en vois pas mais regardes bien ton fichier connexion.php ou mets le code de ce fichier en masquant les codes d'accès à la base bien sûr.

@lain
Répondre à Alain_42

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 kanabinch, le jeudi 7 février 2008 à 14:06:56
et lorsque je clik sur Valider sans avoir saisi aucune information
il est écrit "eleve < > enregistré."
Pas de message d'erreur.
Bon en tout cas vous m'avez bcp aidé et je vous remercie. Je ne vais pas vous emmebêter plus
au revoir
Répondre à kanabinch
Validation formulaire clavier (IE) (Résolu)Bonjour, J'ai un problème avec la validation clavier d'un formulaire sous Internet Explorer. Tout marche très bien sous Mozilla mais je n'ai aucun retour avec IE. Pourtant mon input est bien de type "submit" et il vu qu'il... www.commentcamarche.net/forum/affich-5227229-validation-formulaire-clavier-ie
PHP Nom de fichier en fonction d'1 formulaire (Résolu)Bonjour, J'aimerais un peu d'aide, je voudrai créer un script qui renomme des fichiers uploader avec ce que l'utilisateur à rempli dans le formulaire. Il faut savoir que c'est pour une application ou l'utilisateur télécharge... www.commentcamarche.net/forum/affich-6746441-php-nom-de-fichier-en-fonction-d-1-formulaire
Supprimer un fichier sur serveur avec php (Résolu)Bonjour, voila le problème: aprés bien des bricolage in fructueux jai réussi a installer un système d'upload avec php. on entre dans un formulaire le fichier a uploader et grace a php ils est placer dans un dossier. jai reussi a lister le... www.commentcamarche.net/forum/affich-5020867-supprimer-un-fichier-sur-serveur-avec-php
Désinstaller proprement Spybot Search and Destroy 1.4Désinstaller Spybot Search&Destroy 1.4 Pour désinstaller Spybot Search&Destroy 1.4, suivre la procédure suivante: Ajout/Suppression de programmes En premier lieu, désactiver le programme, puis faire une désinstallation classique via... www.commentcamarche.net/faq/sujet-7371-desinstaller-proprement-spybot-search-and-destroy-1-4
Désinstaller Proprement Spybot search&destroy 1.4Spybot search&destroy 1.4 Comment désinstaller Ajout/Suppression de programmes du Panneau de configuration. Si vous voulez vous débarrasser complètement de Spybot-S&D 1.4 (ou d'une version antérieure) et si l'Ajout/Suppression de programmes... www.commentcamarche.net/faq/sujet-7372-desinstaller-proprement-spybot-search-destroy-1-4
Sélections multiples ds 1 formulaire ACCESS (Résolu)Bonjour, J'ai créé un formulaire sous ACCESS 2000, il y a des champs avec listes déroulantes, je souhaiterais pouvoir sélectionner plusieurs choix et non qu'un seul dans ma liste déroulante. Par exemple, dans un formulaire j'ai un champ... www.commentcamarche.net/forum/affich-6475026-selections-multiples-ds-1-formulaire-access
Sms envoyé????? (Résolu)Bonjour, p'tit pb...envoi d'1 sms via mon ordi vers l'étranger hier soir avec demande d'accusé de réception. ma messagerie met: "sms envoyé", pourtant je ne reçois pas d'accusé de réception...je recommence et...tjrs pas... www.commentcamarche.net/forum/affich-7910571-sms-envoye
Problème VB - Access (Résolu)Bonjour, Dans un formulaire, j'ai plusieurs boutons, chacun relié à une zone de texte, qui ouvrent le même formulaire lorsque l'on clique dessus. Je clique sur un bouton du 1er formulaire. Le 2ème formulaire s'ouvre. Dans ce formulaire... www.commentcamarche.net/forum/affich-8197739-probleme-vb-access
HP Pavilion dv7-1040efdv 7 1040 ef ,Intel Core 2 Duo, 2 GHz, 3072 Mo de RAM, Disque dur 320 Go, Ecran 17 pouces,Page web du produit:Français,Poids:3.46 kg,Dimensions (HxLxP):45.0x396.0x285.0 mm,Type de batterie:Lithium Ion,Divers:One Year Warranty,Autonomie de la... www.commentcamarche.net/guide-achat/hp-pavilion-dv7-1040ef-1147403-fiche-technique
HP Pavilion dv7-1050efdv 7 1050 ef ,Intel Core 2 Duo, 2.26 GHz, 3072 Mo de RAM, Disque dur 250 Go, Ecran 17 pouces,Poids:3.46 kg,Dimensions (HxLxP):45.0x396.0x285.0 mm,Type de batterie:Lithium Ion,Autonomie de la batterie:0.0 heures,Divers:One Year Warranty,Connecteur VGA... www.commentcamarche.net/guide-achat/hp-pavilion-dv7-1050ef-1147393-fiche-technique
YouTube diffusera le documentaire "No End in Sight" du 1er septembre au 4 novembre 2008(Paris - Relax news) - Le site de partage de vidéos en ligne YouTube.com mettra le documentaire No End in Sight de Charles Ferguson à disposition des internautes du 1er septembre au 4 novembre prochains, annonce la presse hollywoodienne.Etude... www.commentcamarche.net/actualites/youtube-diffusera-le-documentaire-no-end-in-sight-du-1er-septembre-au-4-novembre-2008-5847242-actualite.php3
Sélection de jeux vidéo du 15 au 21 octobre : sortie de Zelda et PES 2008(Paris - Relax news) - Notre sélection de jeux vidéo du 15 au 21 octobre. Cette semaine verra le lancement de deux jeux très différents et très attendus : la simulation de football Pro Evolution Soccer 08 et le jeu d'aventure The Legend of Zelda :... www.commentcamarche.net/actualites/selection-de-jeux-video-du-15-au-21-octobre-sortie-de-zelda-et-pes-2008-3780102-actualite.php3
Les ventes de produits électroniques grand public en recul de 1%(Paris - Relax news) - Au cours du premier semestre 2008, le marché français de l'électronique grand public est en baisse de 1% en valeur, rapporte GfK. Après plusieurs années de hausse, le chiffre d'affaires de ce marché (hors consoles de jeux)... www.commentcamarche.net/actualites/les-ventes-de-produits-electroniques-grand-public-en-recul-de-1-5847291-actualite.php3
Toutes les réponses pour « [PHP] validation d1 formulaire via phpmyadmin »