Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster -> FAQ BDD, Cours BDD et Sources BDD
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 17/10/2009, 06h03   #1
Invité de passage
 
Date d'inscription: octobre 2009
Messages: 4
Par défaut Lecture d'un $_GET pour sélectionner un enregistrement SQL

Bonjour,
Mon problème est certainement simple pour vous; le voici:
Je reçois des données par $_GET dans un fichier php
Je peux sans problème afficher le contenu des variables.
Le problème est lorsque je veux utiliser une des variables pour sélectionner un des enregistrements de ma base SQL

Voici le code envoyé par la page originale:
.../affparois.php?Ville= Adstock&Indexx=10&Nom_du_cimetiere= St-M?thode

C'est le résultat de la variable Indexx que j'ai besoin. Je veux donc ouvrir l'enregistrement #10 de ma table dans ce cas ci.

Le fichier qui contient la requête cause problème ici:

$sql = 'SELECT * FROM Paroisses WHERE NoCim="$_GET[Indexx]" ';

// On lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());

//on organise $req en tableau associatif $data['champ']
//en scannant chaque enregistrement récupéré
//on en profite pour gérer l'affichage

//titre de la page avant la boucle
echo'<h2>TOUTES LES DONNEES INSCRITES :</h2>';

//boucle
while ($data = mysql_fetch_array($req))
{

// on affiche les résultats
echo 'Pseudo : <strong>'.$data['Ville'].'</strong><br />';
echo 'Son âge : '.$data['Nom_du_cimetiere'].'<br />';
echo 'Sa date d\'inscription : '.$data['Description'].'<br /><br/>';
}
//On libère la mémoire mobilisée pour cette requête dans sql
//$data de PHP lui est toujours accessible !
mysql_free_result ($req);

//On ferme sql
mysql_close ();
?>

Si je ne spécifie pas de clause WHERE, la boucle while se fait et j'ai la réponse de tous les enregistrements. Lorsque je mets la clause WHERE..., il ne va pas chercher l'enregistrement #10 , la réponse reste sans résultat (et sans erreur).
Si j'indique le #10 manuellement, (...WHERE NoCim="10") j'ai le résultat escompté.
Quelqu'un peut-il m'aider ?
Merci à l'avance
frangreg est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 17/10/2009, 09h23   #2
Membre éclairé
 
Date d'inscription: mai 2009
Localisation: Lyon
Messages: 397
Par défaut

Bonjour,
Peut-être qu'en testant ce bout de code :
Code :
<form action="" method="get">
	<input type="text" name="Indexx"/>
	<input type="submit" name="valider" value="valider">
</form>
<?php 
if (!empty($_GET['Indexx'])) {
	echo "<pre>";
	var_dump($_GET);
	echo "</pre>";
 
	$sql = 'SELECT * FROM Paroisses WHERE NoCim="$_GET[Indexx]" ';
	echo "Requete 1 : ".$sql."<br/>"."<br/>";
 
	$sql = 'SELECT * FROM Paroisses WHERE NoCim='.$_GET['Indexx'];
	echo "Requete 2 : ".$sql."<br/>";
}
cela éclairera ta lanterne.
Fred
micetf est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 17/10/2009, 15h11   #3
Invité de passage
 
Date d'inscription: octobre 2009
Messages: 4
Par défaut Merci

C'est fou, je savais que ce n'était pas grand chose.
Problème résolu dès mon réveil ce matin.
Merci beaucoup Fred
et merci aussi à developpez.net pour la rapidité des réponses!
frangreg est déconnecté   Envoyer un message privé Réponse avec citation
NEWS PHPFAQ PHPCours PHPSources PHPLivres PHPScripts PHPOutils PHPComparatifsZend Framework

Réponse Proposer ce sujet en actualité

Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non



Fuseau horaire GMT +1. Il est actuellement 10h14.


Vos questions techniques : forum d'entraide PHP - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Hébergement - Participez - Copyright © 2000-2010 www.developpez.com - Legal informations.