IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Envoi de données à partir d'un formulaire [MySQL]


Sujet :

PHP & Base de données

  1. #21
    Invité
    Invité(e)
    Par défaut
    mmmh

    ton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo $sql_add."<br>";
    est où dans ton code? Je ne le vois pas.
    Ajoute-le pour que l'on puisse voir ta requête INSERT sur la page ajout.php et mets le header("Location: http://acueil.htm "); en commentaire pour ne pas être être redirigé vers la page d'accueil le temps de diagnostiquer ta requête

    De plus,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    http://accueil.html
    n'est pas une adresse correcte

    Elle doit être de ce style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    http://<serveur>/accueil.html

  2. #22
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 83
    Par défaut
    Bonjour!

    Voici le code entier de l'ajout:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    <?php
    //affectation des valeurs du formulaire à des variables 
    $num_salle=$_POST['select_num_salle'];
    $nbr=$_POST['nbr'];
    $Date=$_POST['MyDate'];
    $Debut = $_POST['heure_debut'];
    $Fin = $_POST['heure_fin'];
    $Objet = $_POST['objet'];
    $Nom = $_POST['nom'];
    $Penom = $_POST['prenom'];
    $Email = $_POST['email'];
    $Dep = $_POST['select_dep'];
     
     
    //Ajout de la réservation à la base de donnée
    //	Connexion à la base de donnée
    	 $db = mysql_connect('localhost', 'root', 'passroot')  or die('Erreur de connexion '.mysql_error()); 
    //	Selection de la base de donnée
    	mysql_select_db('gestion',$db)  or die('Erreur de selection '.mysql_error());  
    //	Requete SQL num_dep
    	$sql_dep="SELECT NUM_DEP FROM departement WHERE NOM_DEP=$Dep";
    	$result=mysql_query($sql_dep) or die ("Erreur select:".mysql_error()); 
    	$row = mysql_fetch_row($result);
    	$num_dep = $row[0]; 
    // 	Requete SQL ajout
    	$sql_add= "INSERT INTO reservation(NUM_SALLE, NUM_DEP,NOMBRE_PARTICIPANT,DEBUT,FIN,OBJET,EMAIL,NOM,PRENOM) 
    	VALUES($num_salle,$num_dep,$nbr,'$Debut','$Fin','$Objet','$Email','$Nom','$Prenom')"; 
     
    // 	Insertion dans la table
    	mysql_query($sql_add) or die('Erreur SQL !'.$sql_add.'<br>'.mysql_error()); 
    //	Fermeture de la connexion
    	mysql_close(); 
    //Redirection vers la page d'accueil
    	//header("Location: http://localhostGestionsallesreunion/accueil.html");
     
     
    ?>
    Autre chose: j'ai pu localiser deux erreur, uen erreur au niveau de la 1ère requete qui donne le numéro du département, et la 2ème concerne la clé de la table réservation. Au moment de l'ajout la clé prend la valeur 0 et j'arrive pas à la mettre automatique sur easy php. Que faire?

  3. #23
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 83
    Par défaut
    C'est bon g pu mettre la clé en auto et quand jéxécute le fichier ajout.php ça me donne des enregsitrement vide ds la base de donnée mais à partir du formulaire ça ne marche pas: Est ce un problème au niveau de l'appel?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    <form action="ajout.php" method="post">
    <Table>
    <tr><td>Num de la salle:</td>
                <td><center><select name='select_num_salle'  size='1' >
     
            <?php
                // Connexion MySQL
                $db = mysql_connect('localhost', 'root', 'passroot')   ; 
     
                // Sélection de la base
                mysql_select_db('gestion',$db)  ;
     
                // on crée la requête SQL
                $sql = 'SELECT NUM_SALLE FROM salle';
     
                // on envoie la requête
                $req = mysql_query($sql) or die ('erreur sur '.$sql.'<br/>'.mysql_error());
     
               if( mysql_num_rows($req) > 0)
               {
                  // on fait une boucle qui va faire un tour pour chaque enregistrement
                  while($data = mysql_fetch_assoc($req))
     
                  // on affiche les informations de l'enregistrement en cours
                  {
                    echo '<option value="' . $data["NUM_SALLE"] . '">' .  $data["NUM_SALLE"] . '</option>'; 
                  }
                }
                else
                {
                    echo '<option value=""> 1 </option>';
                }
                // on ferme la connexion à mysql
                mysql_close(); 
             ?>        
     
                    </select></center></td><td></td></tr>
    <tr><td>Nombre de participant:</td><td><center><input type=text name='nbr'></center></td><td></td></tr>
    <tr><td>Date de la réunion:</td><td><center><FORM name=myForm>
    <INPUT id=MyDate name=MyDate size=20></td><td> 
    <a href="JavaScript:;" onClick="toggleCalendar('MyDate')"><IMG src='calendrier.jpg' border="0"></a>
    </form>
    <TABLE bgColor=#ffffff border=1 cellPadding=0 cellSpacing=3 id=calendar style="DISPLAY: none; POSITION: absolute; Z-INDEX: 4">
      <TBODY>
      <TR>
        <TD colSpan=7 vAlign=center>
    	<!-- Month combo box -->
    	<SELECT id=month onchange=newCalendar()> 
        	<SCRIPT language=JavaScript>
    		// Output months into the document.
    		// Select current month.
    		for (var intLoop = 0; intLoop < months.length; intLoop++)
    			document.write("<OPTION " +	(today.month == intLoop ? "Selected" : "") + ">" + months[intLoop]);
    		</SCRIPT>
    	</SELECT> 
    	<!-- Year combo box -->
    	<SELECT id=year onchange=newCalendar()> 
            <SCRIPT language=JavaScript>
    		// Output years into the document.
    		// Select current year.
    		for (var intLoop = 1900; intLoop < 2028; intLoop++)
    			document.write("<OPTION " + (today.year == intLoop ? "Selected" : "") + ">" + intLoop);
    		</SCRIPT>
    	</SELECT> 
     
    	</TD>
      </TR>
     
     
     
      <TR class=days>
    	<!-- Generate column for each day. -->
        <SCRIPT language=JavaScript>
    	// Output days.
    	for (var intLoop = 0; intLoop < days.length; intLoop++)
    		document.write("<TD>" + days[intLoop] + "</TD>");
    	</SCRIPT>
      </TR>
     
     
      <TBODY class=dates id=dayList onclick="getDate('')" vAlign=center>
      <!-- Generate grid for individual days. -->
      <SCRIPT language=JavaScript>
    	for (var intWeeks = 0; intWeeks < 6; intWeeks++)
    	{
    		document.write("<TR>");
    		for (var intDays = 0; intDays < days.length; intDays++)
    			document.write("<TD></TD>");
    		document.write("</TR>");
    	}
      </SCRIPT>
     
      <!-- Generate today day. --></TBODY>
      <TBODY>
      <TR>
        <TD class=today colSpan=5 id=todayday onclick=getTodayDay()></TD>
        <TD align=right colSpan=2><A href="javascript:HideCalendar();"><SPAN style="COLOR: black; FONT-SIZE: 10px"><B>Hide</B></SPAN></A></TD>
      </TR>
      </TBODY>
     
    </TABLE>
     
     
    </center></td>
    	</tr>
    <tr><td>Début:</td><td><center><select name='heure_debut'>
    	                <option value='0000'>00H00</option>
    	                <option value='0030'>00H30</option>
    	                <option value='0100'>01H00</option>
    	                <option value='0130'>01H30</option>
    	                <option value='0200'>02H00</option>
    	                <option value='0230'>02H30</option>
    	                <option value='0300'>03H00</option>
    	                <option value='0330'>03H30</option>
    	                <option value='0400'>04H00</option>
    	                <option value='0430'>04H30</option>
    	                <option value='0500'>05H00</option>
    	                <option value='0530'>05H30</option>
    	                <option value='0600'>06H00</option>
    	                <option value='0630'>06H30</option>
    	                <option value='0700' selected>07H00</option>
    	                <option value='0730'>07H30</option>
    	                <option value='0800'>08H00</option>
    	                <option value='0830'>08H30</option>
    	                <option value='0900'>09H00</option>
    	                <option value='0930'>09H30</option>
    	                <option value='1000'>10H00</option>
    	                <option value='1030'>10H30</option>
    	                <option value='1100'>11H00</option>
    	                <option value='1130'>11H30</option>
    	                <option value='1200'>12H00</option>
    	                <option value='1230'>12H30</option>
    	                <option value='1300'>13H00</option>
    	                <option value='1330'>13H30</option>
    	                <option value='1400'>14H00</option>
    	                <option value='1430'>14H30</option>
    	                <option value='1500'>15H00</option>
    	                <option value='1530'>15H30</option>
    	                <option value='1600'>16H00</option>
    	                <option value='1630'>16H30</option>
    	                <option value='1700'>17H00</option>
    	                <option value='1730'>17H30</option>
    	                <option value='1800'>18H00</option>
    	                <option value='1830'>18H30</option>
    	                <option value='1900'>19H00</option>
    	                <option value='1930'>19H30</option>
    	                <option value='2000'>20H00</option>
    	                <option value='2030'>20H30</option>
    	                <option value='2100'>21H00</option>
    	                <option value='2130'>21H30</option>
    	                <option value='2200'>22H00</option>
    	                <option value='2230'>22H30</option>
    	                <option value='2300'>23H00</option>
    	                <option value='2330'>23H30</option>
    	              </select></center></td><td></td></tr>
    <tr><td>Fin:</td><td><center><select name='heure_fin'>
    	                <option value='0000'>00H00</option>
    	                <option value='0030'>00H30</option>
    	                <option value='0100'>01H00</option>
    	                <option value='0130'>01H30</option>
    	                <option value='0200'>02H00</option>
    	                <option value='0230'>02H30</option>
    	                <option value='0300'>03H00</option>
    	                <option value='0330'>03H30</option>
    	                <option value='0400'>04H00</option>
    	                <option value='0430'>04H30</option>
    	                <option value='0500'>05H00</option>
    	                <option value='0530'>05H30</option>
    	                <option value='0600'>06H00</option>
    	                <option value='0630'>06H30</option>
    	                <option value='0700' selected>07H00</option>
    	                <option value='0730'>07H30</option>
    	                <option value='0800'>08H00</option>
    	                <option value='0830'>08H30</option>
    	                <option value='0900'>09H00</option>
    	                <option value='0930'>09H30</option>
    	                <option value='1000'>10H00</option>
    	                <option value='1030'>10H30</option>
    	                <option value='1100'>11H00</option>
    	                <option value='1130'>11H30</option>
    	                <option value='1200'>12H00</option>
    	                <option value='1230'>12H30</option>
    	                <option value='1300'>13H00</option>
    	                <option value='1330'>13H30</option>
    	                <option value='1400'>14H00</option>
    	                <option value='1430'>14H30</option>
    	                <option value='1500'>15H00</option>
    	                <option value='1530'>15H30</option>
    	                <option value='1600'>16H00</option>
    	                <option value='1630'>16H30</option>
    	                <option value='1700'>17H00</option>
    	                <option value='1730'>17H30</option>
    	                <option value='1800'>18H00</option>
    	                <option value='1830'>18H30</option>
    	                <option value='1900'>19H00</option>
    	                <option value='1930'>19H30</option>
    	                <option value='2000'>20H00</option>
    	                <option value='2030'>20H30</option>
    	                <option value='2100'>21H00</option>
    	                <option value='2130'>21H30</option>
    	                <option value='2200'>22H00</option>
    	                <option value='2230'>22H30</option>
    	                <option value='2300'>23H00</option>
    	                <option value='2330'>23H30</option>
    	              </select></center></td><td></td></tr>
    <tr><td>Objet:</td><td><center><input type=text name='objet'></center></td><td></td></tr>
    <tr><td>Nom:</td><td><center><input type=text name='nom'></center></td><td></td></tr>
    <tr><td>Prenom:</td><td><center><input type=text name='prenom'></center></td><td></td></tr>
    <tr><td>Email:</td><td><center><input type=text name='email'></center></td><td></td></tr>
    <tr><td>Département:</td><td><center><select name='select_dep'  size='1' >
     
            <?php
                // Connexion MySQL
                $db = mysql_connect('localhost', 'root', 'passroot')   ; 
     
                // Sélection de la base
                mysql_select_db('gestion',$db)  ;
     
                // on crée la requête SQL
                $sql = 'SELECT NOM_DEP FROM departement';
     
                // on envoie la requête
                $req = mysql_query($sql) or die ('erreur sur '.$sql.'<br/>'.mysql_error());
     
               if( mysql_num_rows($req) > 0)
               {
                  // on fait une boucle qui va faire un tour pour chaque enregistrement
                  while($data = mysql_fetch_assoc($req))
     
                  // on affiche les informations de l'enregistrement en cours
                  {
                    echo '<option value="' . $data["NOM_DEP"] . '">' .  $data["NOM_DEP"] . '</option>'; 
                  }
                }
                else
                {
                    echo '<option value=""> 1 </option>';
                }
                // on ferme la connexion à mysql
                mysql_close(); 
             ?>        
     
                    </select></center></td><td></td></tr>
     
    <tr><td></td><td><center><input type=submit value="Envoyer">
    <input type=reset value="Annuler"></center></td><td></td></tr></table>
    </form>

  4. #24
    Invité
    Invité(e)
    Par défaut
    Salut,

    tu vas sur phpmyadmin -> tu cliques sur la tables réservations -> et tu mets auto_increment dans la colonne "extra" de ton champ id_reservation

  5. #25
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 83
    Par défaut
    c fé
    ajout.php séxécute sans faute, mais son appel au niveau de reservation.php ne donne rien, n'ajoute pas

  6. #26
    Invité
    Invité(e)
    Par défaut
    Pourrais-tu fournir le scirpt sql de tes tables?

  7. #27
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 83
    Par défaut
    le voici:

    gestion.sql

  8. #28
    Invité
    Invité(e)
    Par défaut
    Alors après avoir le test avec ce que tu m'as fourni

    Voici les erreurs que j'ai constaté:

    Dans le script sql :

    /*==============================================================*/
    /* Table : RESERVATION */
    /*==============================================================*/
    create table RESERVATION
    (
    NUM numeric(8,0) not null, -> doit être de type INT pour pouvoir le mettre en autoincrément, je te conseille de mettre toutes tes clés primaires avec ce type
    NUM_SALLE numeric(8,0) not null,
    ID numeric(8,0) not null,
    NUM_DEP numeric(8,0) not null,
    NOMBRE_PARTICIPANT numeric(8,0),
    DATE date, -> le mot DATE est un mot reservé -> je l'ai remplacé par DATE_RES
    DEBUT time,
    FIN time,
    OBJET longtext,
    RESPONSABLE longtext,
    EMAIL longtext,
    primary key (NUM)
    );

    après ces modifications,

    J'ai fait le test via le formulaire:

    Le formulaire appel correctement ta page ajout.php MAIS je vois les erreurs suivantes de mon côté:

    Notice: Undefined variable: Prenom in d:\www\ajout.php on line 27
    Erreur SQL !INSERT INTO reservation(NUM_SALLE, NUM_DEP,NOMBRE_PARTICIPANT,DEBUT,FIN,OBJET,EMAIL,NOM,PRENOM) VALUES(1,,test,'0100','0230','arar','resrs','arar','')
    Erreur de syntaxe près de 'test,'0100','0230','arar','resrs','arar','')' à la ligne 2
    En regarde de plus près:
    Erreur 1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $PRenom = $_POST['prenom']; -> il manque un R
    Erreur 2:

    Le num de dept n'est pas récupéré ( Je n'ai ajouté aucune valeur dans cette table)

    Dans le code source de ton formulaire je vois ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    else{
     echo '<option value=""> 1 </option>';
    }
    Si tu ne mets rien dans value -> ton insert va générer un erreur -> pour éviter cela mets un 0 ou 1 ou que sais-je mais il y a besoin d'un chiffre.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     echo '<option value="0"> 1 </option>';

  9. #29
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 83
    Par défaut
    Merci

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. remplir les données à partir d'un formulaire
    Par hafcher dans le forum Langage
    Réponses: 7
    Dernier message: 17/06/2008, 14h18
  2. [MySQL] Insérer des données à partir d'un formulaire
    Par super-java dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 15/10/2007, 11h01
  3. Réponses: 3
    Dernier message: 25/07/2007, 16h48
  4. Réponses: 12
    Dernier message: 26/04/2007, 11h38
  5. Insertion de données à partir d'un formulaire
    Par zeugzeug dans le forum Requêtes
    Réponses: 2
    Dernier message: 19/04/2007, 15h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo