Précédent   Forum des professionnels en informatique > PHP > Scripts
Scripts Forum d'entraide sur les scripts PHP téléchargés. Les meilleurs scripts PHP, la FAQ scripts PHP, toutes les FAQ PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/02/2008, 14h23   #1
Membre du Club
 
Avatar de zabdaniel
 
Inscription : février 2007
Messages : 175
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : février 2007
Messages : 175
Points : 54
Points : 54
Par défaut Passage de variables entre scripts

Bonjour
voici mon code
Code :
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
<?php session_start();
require("conf.php3");
if (!isset($_SESSION['pseudo'])) //Le code pour verifier qu'une session existe
{
	die('Vous n\'êtes pas autorisez à acceder à cette page.'); //Si non, on arrete le script
}
 
 
define ("USER", "root") ;
define ("PASSWORD", "") ;
 
$connexion =mysql_connect("localhost",USER,PASSWORD)
or exit("Erreur 101") ;
 
mysql_select_db( "aviatec" ,$connexion)
or exit("Erreur 102") ;
 
if (isset($_POST['rechercher'])) //si on a validé le formulaire
{
$recherche = mysql_real_escape_string(htmlspecialchars($_POST['recherche'])); //sécurisation des variables
 
$mots = explode(' ', $recherche); //séparation des mots de la recherche à chaque espace
$nombre_mots = count ($mots); //compte le nombre de mots
$valeur_requete = '';
for($nombre_mots_boucle = 0; $nombre_mots_boucle < $nombre_mots; $nombre_mots_boucle++) //tant que le nombre de mots de la recherche est supérieur à celui de la boucle on continue en augmentant la variable $nombre_mots_boucle de 1 à chaque fois
{
$valeur_requete .= 'OR DESCRIPTIONFRANCAISE LIKE \'%' . $mots[$nombre_mots_boucle] . '%\''; //modification de la variable $valeur_requete
}
$valeur_requete = ltrim($valeur_requete,'OR'); //suppresion de OR au début de la boucle
 
$selection_recherche = mysql_query("SELECT * FROM base_articles WHERE $valeur_requete ORDER BY id");
$nombre_resultats = mysql_num_rows($selection_recherche); 
$sql= "SELECT * FROM base_articles WHERE DESCRIPTIONFRANCAISE='$selection_recherche'";
$req=mysql_query($sql)or exit ('Erreur SQL !'.$sql.'<br>'.mysql_error());
 
if ($nombre_resultats == 0) //si il n'y a pas de résultat
{
echo 'aucun resultat.<a href="recherche.php">recommencer</a>';
}
else //il y a au moins un resultat
{
echo 'nombre de résultats: ' . $nombre_resultats . '<br /><br />'; //nombre de résultats
while($resultats = mysql_fetch_array($selection_recherche) ) //boucle affichant les resultats
{
echo '<strong>Numero d\'article:</strong> ' . $resultats['id'] . '<br />
<strong>Désignation:</strong> ' . $resultats['DESCRIPTIONFRANCAISE'] . '<br />
<strong>Référence:</strong> ' . $resultats['REFERENCE'] . '<br />
<strong>Specifications:</strong> ' . $resultats['SPECIFICATIONS'] . '<br />
<br />';
?>
<form method="post" action="recherche2.php">
<input type="hidden" value="<?php echo $resultats['id']; ?>" name="id"> 
 
<input type="submit" value="commander" name="cder" />
</form>
<?php
 
}
echo '<a href="recherche.php">recommencer</a>';
}
}
else //si on a pas validé le formulaire on l'affiche
{
?>
 
<form method="post" action="recherche.php">
Votre recherche:
<input type="text" name="recherche" />
 
<br />
<input type="submit" value="Rechercher" name="rechercher" />
</form>
<?php
}
mysql_close(); //déconnexion de la bdd
?>
Je cherche à afficher LE produit que la personne veut commander dans une nouvelle page voici mon code :
Code :
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
<H1 align="center">&nbsp;</H1>
<H1 align="center">Ma Boutique en ligne</H1>
<table border="1" bgcolor="cccccc" align="center" width="75%">
<tr  bgcolor='white'>
<td colspan=3 align="center" width="">
Catégorie</td>
  </tr>
   <tr bgcolor='white'>
	<td width="">Noms</td>
	<td width="">Désignation</td>
	<td width="">quantité</td>
   </tr>
   </table>
 
<?php
$connexion =  mysql_connect("localhost","root","")
or exit("Erreur 101") ;
 mysql_select_db( "aviatec" , $connexion)
or exit("Erreur 102") ;
echo "id=".$resultats['id']."<br>"; 
 
 
$sql="Select* from base_articles where id=$resultats['id']";
$req=mysql_query($sql,$connexion)or exit ('Erreur SQL !'.$sql.'<br>'.mysql_error());
while( $data=mysql_fetch_array($req) ) {
echo"<tr><td>".$data['DESCRIPTIONFRANCAISE']." </td><td> ".$data['DESIGNATION']."</td><td> <a href='panier4_1.php?prod=".$data['id']."'>Détail+Cde</a></td></tr>";
 
 
}
mysql_close();
?>
Mais c'est complètement faux, si quelqu'un veut bien m'aider s'il vous plait
merci
zabdaniel est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2008, 15h13   #2
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Il ne faut pas reprendre le nom de la variable de l'autre script (ils n'entretiennent aucun lien à ce niveau) mais puisqu'il y a transmission par formulaire, utiliser $_POST['id'] (au lieu de $resultats['id']).

PHP devrait afficher un message d'erreur dans tout environnement de développement convenablement configuré, puisque cette variable n'existe pas (ce qui permet de révéler tout de suite toute anomalie ou erreur).
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/02/2008, 11h12   #3
Membre du Club
 
Avatar de zabdaniel
 
Inscription : février 2007
Messages : 175
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : février 2007
Messages : 175
Points : 54
Points : 54
Ah merci, en fait j'ai créé une variable id égal à resultat[id], que j'ai passé à l'autre page puis je récupérais cette valeur et affichait tout l'article avec une requête mysql
merci beaucoup
zabdaniel est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h22.


 
 
 
 
Partenaires

Hébergement Web