Menu deroulant php

Administrateur PHPfrance
Administrateur PHPfrance | 977 Messages

11 août 2009, 11:14

enlève
$cp = $donnees['Adresse_CP'];

et met

Code : Tout sélectionner

Code postal:<input id="codepostal" type="text" name="name" maxlength="50" size="10" value="<?php echo (isset($donnees['Adresse_CP']) ? $donnees['Adresse_CP'] : ''); ?>">
Les messages notices se sont pas bloquant, mais depuis quelques temps maintenant, il faut "déclarer ses variables" donc leur donner une valeur par défaut.
pro : http://www.ohweb.fr -> studio de développement en PHP, expertise en e-commerce, certifié PrestaShop
perso : http://www.olecorre.com -> un dico de termes informatiques

J'ai toujours rêvé d'un ordinateur qui soit aussi facile à utiliser qu'un téléphone. Mon rêve s'est réalisé : je ne sais plus comment utiliser mon téléphone. [Bjarne Stroustrup]

Eléphanteau du PHP | 28 Messages

11 août 2009, 11:17

Sa marche merci ! par contre autre soucis d'optimisation :D ,quand je selectionne le nom d'un client et que je clique sur envoyez le nom du client disparait :/

Administrateur PHPfrance
Administrateur PHPfrance | 977 Messages

11 août 2009, 11:20

while ($rang=mysql_fetch_array($resultat)){
	echo "<option value=\"".$rang['Client_id']."\"";
	if(isset($_POST['client']) && $rang['Client_id']==$_POST['client']) echo " selected=\"selected\"";
	echo ">". $rang['Raison_sociale']."</option>";
}
pro : http://www.ohweb.fr -> studio de développement en PHP, expertise en e-commerce, certifié PrestaShop
perso : http://www.olecorre.com -> un dico de termes informatiques

J'ai toujours rêvé d'un ordinateur qui soit aussi facile à utiliser qu'un téléphone. Mon rêve s'est réalisé : je ne sais plus comment utiliser mon téléphone. [Bjarne Stroustrup]

Eléphanteau du PHP | 28 Messages

11 août 2009, 11:30

Merci beaucoup sa marche parfaitement ! :mrgreen:

Eléphanteau du PHP | 28 Messages

27 août 2009, 11:13

Re up !

J'ai fais des modifications pour des soucis de fonctionnalité et maintenant j'ai une erreur a la con :/ donc en faite maintenant j'ai crée une page "neutre" ou il y a juste le formulaire de recherche et quand je clique sur envoyez sa m'ouvre une autre pages avec les informations du clients.Le soucis est que les informations sont diviser en plusieurs pages(identification,contact interne,consigne de chargement,etc...).

Voici le code de la page du formulaire:
<?php
session_start(); // On démarre la session AVANT toute chose
?>
<html>
<?php
include "connexion.inc.php";
$_SESSION['client'] = isset($_POST['client']) ? $_POST['client'] : '';
?>
<head>
<meta http-equiv="content-type" content="text/html/php; charset=utf-8" />
<link href="template.css" rel="stylesheet" type="text/css" />
</head>


<body>
<div id="contenu">

<div class="menu">
<b><u><center><font face="Verdana, Geneva, sans-serif" size="5">Cahier des charges client</font></b></u></center>
<br>
<br>
<br>
<br>
<br>
<b>Votre Recherche:</b>
<form method="post" action="identification.php" name="recherche">
<?php
$sql="SELECT Client_id, Raison_sociale FROM client ORDER BY Client_id";
$resultat=mysql_query($sql, $id_link);
echo '<select name="client">';
echo '<option value="" selected></option>';
       
while ($rang=mysql_fetch_array($resultat)){
        echo "<option value=\"".$rang['Client_id']."\"";
        if(isset($_POST['client']) && $rang['Client_id']==$_POST['client']) echo " selected=\"selected\"";
        echo ">". $rang['Raison_sociale']."</option>";
}
echo '</select>';
       

?>
<input type="submit" value="Envoyer" /></form>
<?php
$donnees = array();
if(isset($_POST['client'])) {
        $client = htmlentities($_POST['client']);
        $reponse = mysql_query("SELECT * FROM client WHERE Client_id =".$client);
        $donnees = mysql_fetch_array($reponse);
}
?>
</div>
</div>
</body>
</html>

Voici la page "identification":
<?php
session_start(); // On démarre la session AVANT toute chose
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<?php
include "connexion.inc.php";
?>

<?php
$donnees = array();
if(isset($_SESSION['client'])) {
        $client = htmlentities($_SESSION['client']);
        $reponse = mysql_query("SELECT * FROM client WHERE Client_id =".$client);
        $donnees = mysql_fetch_array($reponse);
}
?>


<head>
<meta http-equiv="content-type" content="text/html/php; charset=utf-8" />
<link href="default.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="header">
	<div id="menu">
		<ul>
		
			<li class="current_page_item"><a href="">Identification client/Conditionnement</a></li>
			<li><a href="http://localhost/index2.php">Contact Interne</a></li>
			<li><a href="#">Précautions/conditions de transport</a></li>
			<li><a href="#">Consignes de chargements/Contraintes</a></li>    

        
		</ul>
	</div>
</div>
<!-- end header -->
<!-- start page -->
<div class="body_identification">
<div id="choix">
<br>
<br>
<div class="identification_client">
<form>
<fieldset>
N° de compte:<input id="numcompte" type="text" name="name" maxlength="50" size="15" value="<?php echo (isset($donnees['Numero_de_compte']) ? $donnees['Numero_de_compte'] : ''); ?>">
Voici mon message d'erreur quand je clique sur "envoyez" de mon formulaire:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\identification.php on line 15

ligne 15:
$donnees = mysql_fetch_array($reponse);
Merci d'avance.

Administrateur PHPfrance
Administrateur PHPfrance | 977 Messages

27 août 2009, 11:18

y aurai pas une erreur dans ta requete ? attention aux majuscule/minuscule ! fait un echo de ta requete et test la sous phpmyadmin !
pro : http://www.ohweb.fr -> studio de développement en PHP, expertise en e-commerce, certifié PrestaShop
perso : http://www.olecorre.com -> un dico de termes informatiques

J'ai toujours rêvé d'un ordinateur qui soit aussi facile à utiliser qu'un téléphone. Mon rêve s'est réalisé : je ne sais plus comment utiliser mon téléphone. [Bjarne Stroustrup]

Eléphanteau du PHP | 28 Messages

27 août 2009, 11:23

Hummm sa ne change pas grand chose en mettant un echo :/ j'ai fais comme on en avait discuter en MP.Je pensais que c'était le meme principe j'ai simplement copier/coller ce que l'on avait dit

Avatar du membre
ViPHP
ViPHP | 3008 Messages

27 août 2009, 11:31

Les 2 codes (formulaire et identification) plus haut se trouvent sur la même page ou ce sont deux pages différentes ?

Eléphanteau du PHP | 28 Messages

27 août 2009, 11:34

2 page differentes,de base j'avais fait sur une seul page et sa marcher très bien mais j'ai voulu essayer en séparant le formulaire.

J'ai donc 1 page principal où est placé mon formulaire puis mon formulaire envoie sur la page identification:
<form method="post" action="identification.php" target="_blank" name="recherche">

Avatar du membre
ViPHP
ViPHP | 3008 Messages

27 août 2009, 11:37

c'est donc normal que ça ne fonctionne pas.

Tu as fait l'initialisation de ta session dans la page du formulaire. Cependant, lorsque tu valides le formulaire, l'action se fait directement dans la nouvelle page : identification. Du coup la session est inexistante.

Eléphanteau du PHP | 28 Messages

27 août 2009, 11:40

hummmm ouai c'est vrai,il y aurait un moyen de regler cela?
ou je dois bêtement laisser le formulaire s'initialiser sur sa page et je met des liens vers la page identification,contact....,etc...?

Administrateur PHPfrance
Administrateur PHPfrance | 977 Messages

27 août 2009, 11:41

met le session_start sur tes deux pages !
pro : http://www.ohweb.fr -> studio de développement en PHP, expertise en e-commerce, certifié PrestaShop
perso : http://www.olecorre.com -> un dico de termes informatiques

J'ai toujours rêvé d'un ordinateur qui soit aussi facile à utiliser qu'un téléphone. Mon rêve s'est réalisé : je ne sais plus comment utiliser mon téléphone. [Bjarne Stroustrup]

Avatar du membre
ViPHP
ViPHP | 3008 Messages

27 août 2009, 11:44

Sur la page formulaire tu n'utilises pas la session non ? Dans ce cas il te suffit de l'initialiser dans la page identification non ?

Eléphanteau du PHP | 28 Messages

27 août 2009, 11:46

le start session est present sur les 2 pages:
<?php
session_start(); // On démarre la session AVANT toute chose
?>