logo

NPDS : Gestion de contenu et de communauté


Content & Community Management System (CCMS) robuste, sécurisé, complet, performant, parlant vraiment français, libre (Open-Source) et gratuit.
51 visiteur(s) et 0 membre(s) en ligne.
Activité du Site

Pages vues depuis 25/05/2001 : 109 413 333

  • Nb. de membres 8 696
  • Nb. d'articles 1 695
  • Nb. de forums 26
  • Nb. de sujets 8
  • Nb. de critiques 92

Top 10  Statistiques

Index du forum »»  Le coin des codeurs »» formulaire-->BDD MySql

formulaire-->BDD MySql#10989

3Contributeur(s)
Tribal-DolphinfaustoTito
3 Modérateur(s)
developpeurjpbJireck
fausto faustoicon_post
rebonjour,

// voici mon formulaire:

<form method="POST" action="add.php">
<center>
<input type="text" name="nom" size="20" value="nom" maxlength="35"> <input type="text" name="prenom" size="20" value="prenom" maxlength="35"><br>
<input type="text" name="email" size="20" value="email" maxlength="70"> <input type="text" name="icq" size="20" value="icq" maxlength="11"><br>
<input type="text" name="titre" size="20" value="titre du site" maxlength="70"> <input type="text" name="url" size="20" value="url du site" maxlength="255"><br>
<input type="submit" value="Envoyer" name="envoyer">
</center>
</form>
fausto faustoicon_post
oops! je ne sais pas pourquoi tt n'est pas parti ds le meme message
voici la suite:
// et le fichier add.php qui le traite et mets à jour la table
//or, dès la vérification de remplissage des champs de texte, j'ai un message d'erreur
// qu'ai je oublié??
//help!! merci

<?
// On commence par vérifier si les champs sont vides
if(empty($nom) OR empty($prenom) OR empty($email) OR empty($titre) OR empty($url))
    {
    echo '<font color="red">Attention, seul le champs <b>ICQ</b> peut rester vide !</font>';
    }

// Aucun champ n'est vide, on peut enregistrer dans la table
else     
    {
       // connexion à la base
$db = mysql_connect('localhost', 'login', 'password')  or die('Erreur de connexion '.mysql_error());
// sélection de la base  

    mysql_select_db('nom_de_la_base',$db)  or die('Erreur de selection '.mysql_error());
    
    // on ecris la requete sql
    $sql = "INSERT INTO infos_tbl VALUES('','$nom','$prenom','$email','$icq','$titre','$url')";
    
    // on insère les informations du formulaire dans la table
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

    // on affiche le résultat pour le visiteur
    echo 'Vos infos on été ajoutées.';

    mysql_close();  // on ferme la connexion
    } 
?>
Tribal-Dolphin Tribal-Dolphinicon_post
Donne le message d'erreur, car ça à l'air bon là !
fausto faustoicon_post
hello,
voici le message d'erreur:
Parse error: parse error in add.php on line 5

merci
Tribal-Dolphin Tribal-Dolphinicon_post
parse error = erreur de code, tu doit avoir des soucis avec ' ou " ou ; à la ligne 5
Etant doné que j'ai pas les numéros de lignes, je peut pas être plus précis.
fausto faustoicon_post
salut,
en fait l'erreur se situe à la ligne de test des champs de texte [if...]
merci de ton aide
fausto

//code php:
<?php
// On commence par vérifier si les champs sont vides
if[empty[$nom] OR empty[$prenom] OR empty[$email] OR empty[$titre] OR empty[$url]]
    {
    echo '<font color="red">Attention, seul le champs <b>ICQ</b> peut rester vide !</font>';
    }

// Aucun champ n'est vide, on peut enregistrer dans la table
else     
    {
       // connexion à la base
$db = mysql_connect['localhost', 'login', 'password']  or die['Erreur de connexion '.mysql_error[]];
// sélection de la base  

    mysql_select_db['nom_de_la_base',$db]  or die['Erreur de selection '.mysql_error[]];
    
    // on ecris la requete sql
    $sql = "INSERT INTO infos_tbl VALUES['','$nom','$prenom','$email','$icq','$titre','$url']";
    
    // on insère les informations du formulaire dans la table
    mysql_query[$sql] or die['Erreur SQL !'.$sql.'<br>'.mysql_error[]];

    // on affiche le résultat pour le visiteur
    echo 'Vos infos on été ajoutées.';

    mysql_close[];  // on ferme la connexion
    } 
?>
fausto faustoicon_post
hello,

j'avance ds mon pb de formulaire, j'ai réussi à entrer une fois les valeurs du formulaire à savoir 'nom' 'prenom' 'age' , mais si j'envoie à nouveau le formulaire, la base reste inchangée, j'ai du oublier une ligne de code
merci de m'aider, en tt cas ça progresse, ouf !
fausto
// le code php de saisie du formulaire:
<?php

$dbhost = "localhost";
$user = "user";
$password = "password";
$usebdd = "nom_de_la_base";
$nom = $_POST["nom"];
$prenom = $_POST["prenom"];
$age = $_POST["age"];
//connexion au serveur MySQL

$connexion = mysql_connect["localhost","user","password"];
if [!$connexion] {
echo "Impossible d'effectuer la connexion";
exit;
}

//sélection de la BDD

$db = mysql_select_db["$usebdd", $connexion];
if [!$db] {
echo "Impossible de sélectionner cette base données";
exit;
}
// insertion des données
$resultat_sql = mysql_query["insert into annuaire values ['$nom','$prenom',$age]", $connexion];


echo "Vos données ont bien été rajoutées .<br>Merci";
mysql_close[];  // on ferme la connexion
?>
Tito Titoicon_post
J'ai tout appris grâce à http://www.phpdebutant.org :=!
Tribal-Dolphin Tribal-Dolphinicon_post
Essaye de remplacer les OR par des || [ Alt Gr + 6 ]
fausto faustoicon_post
cimer, j'en termine...
j'arrive à incrémenter la bdd via le formulaire [victoire, ça s'arrose!!!]
il me reste un dernier pb pour l'affichage des données ds un tableau html [une broutille, quoi!]
//ci dessous, le code pour afficher
//j'ai une 'parse error' à la ligne '$select' ?????
<?php
// ATTENTION, pour que le script fonctionne la table doit être créee

$dbhost = "localhost";
$user = "root";
$password = "";
$usebdd = "db";

//connexion au serveur MySQL

$connexion = mysql_connect["localhost","login","password"];
if [!$connexion] {
echo "Impossible d'effectuer la connexion";
exit;
}

//sélection de la BDD

$db = mysql_select_db["$usebdd", $connexion];
if [!$db] {
echo "Impossible de sélectionner cette base données";
exit;
}

// requête SQL qui compte le nombre total d'enregistrement dans la table et qui
//récupère tous les enregistrements
$select = 'SELECT nom,prenom,age FROM annuaire';
$result = mysql_query[$select,$link] or die ['Erreur : '.mysql_error[] ];
$total = mysql_num_rows[$result];


// si on a récupéré un résultat on l'affiche.
if[$total] {
    // debut du tableau
    echo '<table bgcolor="#CCCCCC">'."\n";
        // première ligne on affiche les titres nom et prenom dans 2 colonnes
        echo '<tr>';
        echo '<td bgcolor="#669999"><b><u>nom</u></b></td>';
        echo '<td bgcolor="#669999"><b><u>prenom</u></b></td>';
echo '<td bgcolor="#669999"><b><u>age</u></b></td>';
        echo '</tr>'."\n";
    // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
    while[$row = mysql_fetch_array[$result]] {
        echo '<tr>';
        echo '<td bgcolor="#CCCCCC">'.$row['nom'].'</td>';
        echo '<td bgcolor="#CCCCCC">'.$row['prenom'].'</td>';
echo '<td bgcolor="#CCCCCC">'.$row['age'].'</td>';
        echo '</tr>'."\n";
    }
    echo '</table>'."\n";
    // fin du tableau.
}
else echo 'Pas d'enregistrements dans cette table...';

// on libère le résultat
mysql_free_result[$result];


?>
Tribal-Dolphin Tribal-Dolphinicon_post
Pour moi c ok !
Mais suivant les versions de PHP, les ' sont chiants.
Essaye $select = "SELECT nom, prenom, age FROM annuaire";
fausto faustoicon_post
yo!
j'ai remplacé les ' par " et j'ai tjrs le meme message d'erreur
??
merci en tt cas
Tribal-Dolphin Tribal-Dolphinicon_post
bizarre car ton code est clean !!