Problème php : impossible d'ajouter des données dans une table

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 : Problème php : impossible d'ajouter des données dans une table

par Ryle » 14 janv. 2008, 11:51

Hum... effectivement, sans appel à la fonction, ça va marcher beaucoup moins bien :) Mais je me demandais pourquoi le die n'avait pas renvoyé d'erreur "Erreur dans l'ajout" voire "impossible de se connecter" et en fait c'est parce qu'il manque une parenthèse : il devrait être en dehors du mysql_query().

Ton script renvoi donc en plus une parse error... et si tu obtiens une page blanche, c'est sans doute que les messages d'erreurs sont désactivés...

par Berzemus » 14 janv. 2008, 10:42

Avec "include", tu ne fais "qu'ajouter" le script qu'il contient à ton script.

Et comme ce n'est pas en créant une fonction que tu l'exécutes, tu devrais ajouter "connect();" avant de vouloir envoyer des requêtes. D'ailleurs, tu utilises très bien "deconnect();".

par spartaxhit » 14 janv. 2008, 03:09

Comment fais tu pour appeler ta fonction alors?

par iclo » 14 janv. 2008, 01:14

Tu includes bien le fichier contenant la fonction de connexion, mais tu n'appelles jamais cette fonction.

re

par [email protected] » 14 janv. 2008, 00:38

Désolé pour l'affichage!

En fait je viens juste de corriger pour le code postal...
Et aussi pour le nom de la table.

Il n'y a pas de message d'erreur, une fois le bouton envoyer cliquer après saisie des informations, le navigateur se place sur \admin\addFORMULAIRE.php et il m'affiche une page blanche! Tout comme le html quand tu ne fermes pas une balise, sauf que mes balises sont correctes, enfin il me semble...

par Ryle » 14 janv. 2008, 00:28

As-tu un message d'erreur ? c'est généralement bourré d'information sur ce qui cloche :)

Déjà à première vue, tu as un espace ou un retour à la ligne dans la liste des champs de l'insert, au niveau de "Code Postal" ... c'est pas normal.

Par ailleurs, j'éviterais les espaces (ou autre caractères spéciaux dans le nom de la base... je te recommande aussi de sortir les variables de tes chaines pour une meilleure lisibilité, et de les protéger à coup de mysql_real_escape_string() pour éviter les injections et autre :)

Enfin, pense à utiliser les balises [ php ] quand tu postes du code, ca le met en forme, en couleur et c'est plus agréable pour nous ;)

Problème php : impossible d'ajouter des données dans une tab

par [email protected] » 14 janv. 2008, 00:00

Bonsoir à tous,

Voila j'ai créer une page html constitué d'un formulaire à remplir pour un site!
Je suis censé depuis là pouvoir écrire dans ma table les informations saisies.

Cependant lors de test, vérifications il persiste une erreur qui est assez agaçante!

A chaque validation du formulaire, il m'est impossible d'ajouter des données dans une table!
Le navigateur affiche une page blanche et c'est tout! J'utilises easy php et notepad++ pour informations!
Quelqu'un aurait une idéé s'il vous plait!

Voici quelques lignes extraites du code des différentes pages :


-> pour le formulaire à remplir Racine\formulaire.php

Code : Tout sélectionner

<form action="admin/addFORMULAIRE.php" method="post"> ... Nom : <INPUT type="text" name="Nom" size="30"><br/><br/> Prénom : <INPUT type="text" name="prenom" size="25"><br/><br/> ... </form>
-> Ecrire dans la base de données Racine\admin\addFORMULAIRE.php
<?php
...
	$Nom= $_POST['Nom'];
	$Prenom = $_POST['prenom'];
...
	include '../func.connexion.php';
	
	$requete = mysql_query("insert into population(Civilite, Nom, Prenom, Adresse, Code
			Postal, Ville, Email, TelephoneDomicile, TelephonePortable) values('$Choix','$Nom','$Prenom','$Adresse','$Cp','$Ville','$Email', '$TelephoneDomicile', '$TelephonePortable', '$ChoixMode')" or die("Erreur dans l'ajout");
	deconnect();
-> function de connection à la base de données Racine\func.connection.php
<?php
  /// connexion ///
  function connect(){
    // paramètres
    $hostDB = '****'; 
    $loginDB = '****';  
    $passwordDB = '****'; 
    $baseDB = 'panel aire urbaine'; 
    $cnx_host = mysql_connect($hostDB, $loginDB, $passwordDB) or die('La connexion au serveur de bases de donnée à échouée !');
    $cnx_base = mysql_select_db($baseDB);
  }
  
  function deconnect(){
    mysql_close();
  }
?>
...

Merci pour toutes vos réponses!