Problème PHP
Fermé
Kro
-
12 sept. 2009 à 18:14
toine512 Messages postés 137 Date d'inscription mercredi 19 août 2009 Statut Membre Dernière intervention 3 décembre 2011 - 12 sept. 2009 à 18:42
toine512 Messages postés 137 Date d'inscription mercredi 19 août 2009 Statut Membre Dernière intervention 3 décembre 2011 - 12 sept. 2009 à 18:42
A voir également:
- Problème PHP
- Easy php - Télécharger - Divers Web & Internet
- Php?id=1 - Forum PHP
- Php if plusieurs conditions ✓ - Forum PHP
- Echo image php ✓ - Forum PHP
- Br php ✓ - Forum PHP
9 réponses
toine512
Messages postés
137
Date d'inscription
mercredi 19 août 2009
Statut
Membre
Dernière intervention
3 décembre 2011
11
12 sept. 2009 à 18:20
12 sept. 2009 à 18:20
Boujour,
$sql = "SELECT * FROM objets WHERE numeroObjet='".$_POST['motcledl']."'";
D'après ma propre expèrience les variables superglobales sont pas les bienvenues dans les requêtes SQL.
Essaye de la transformer en une variable "normale" avant :
$autrevariable = $_POST['motcledl']
$sql = ("SELECT * FROM objets WHERE numeroObjet='$autrevariable'"); // requête corrigée ;) sans les paranthèses et les "" ca fonctionne pas !
@+
$sql = "SELECT * FROM objets WHERE numeroObjet='".$_POST['motcledl']."'";
D'après ma propre expèrience les variables superglobales sont pas les bienvenues dans les requêtes SQL.
Essaye de la transformer en une variable "normale" avant :
$autrevariable = $_POST['motcledl']
$sql = ("SELECT * FROM objets WHERE numeroObjet='$autrevariable'"); // requête corrigée ;) sans les paranthèses et les "" ca fonctionne pas !
@+
toine512
Messages postés
137
Date d'inscription
mercredi 19 août 2009
Statut
Membre
Dernière intervention
3 décembre 2011
11
12 sept. 2009 à 18:27
12 sept. 2009 à 18:27
Euh ptite question idiote comme ça ... tu te connectes a la base MySQL ? :D (pas de mysql_connect)
Pourrais tu faire un copié/collé de l'erreur renvoyée ?
Pourrais tu faire un copié/collé de l'erreur renvoyée ?
oui oui plus haut car je fais aussi une rechercher par mot clé et celle-ci marche très bien donc ce n'est pas un souci de base à priori =)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
fred_bgt
Messages postés
153
Date d'inscription
mercredi 31 décembre 2008
Statut
Membre
Dernière intervention
12 septembre 2009
22
12 sept. 2009 à 18:30
12 sept. 2009 à 18:30
slt,
peux-tu nous dire quelle type d'erreur tu rencontres exactement ? Ca ira + vite.
y a-t-il un code erreur renvoyé par le serveur ? ou est-ce un pb d'affichage des données qui n'est pas conforme à tes attentes ?
par ailleurs, je te conseille une écriture de ton code un peu plus facile lorsque tu écris en PHP/HTML, exemple :
je prends ton code :
<?php
$index = mysql_query ("SELECT * FROM categorie");
while($boucle = mysql_fetch_array($index))
{
?>
<option value="<?php echo $boucle['motcledl'] ;?>" >
<?php
echo $boucle['motcledl'] ;?></option>
<?php
}
?>
Pas toujours évident à lire car beaucoup de <? et ?> ce qui rend a lecture difficile et augmente le risque d'erreurs
je te conseille (c'est comme cela que je fais) de coder tout en PHP :
<?php
$index = mysql_query ("SELECT * FROM categorie");
while($boucle = mysql_fetch_array($index))
echo "<option value='".$boucle['motcledl']."'>".$boucle['motcledl']."</option>";
echo " </select>
<input type='submit' value='Rechercher'>
</td></tr>
</table>
</form> ";
J'attends ta réponse pour le type d'erreur que tu rencontres ...
peux-tu nous dire quelle type d'erreur tu rencontres exactement ? Ca ira + vite.
y a-t-il un code erreur renvoyé par le serveur ? ou est-ce un pb d'affichage des données qui n'est pas conforme à tes attentes ?
par ailleurs, je te conseille une écriture de ton code un peu plus facile lorsque tu écris en PHP/HTML, exemple :
je prends ton code :
<?php
$index = mysql_query ("SELECT * FROM categorie");
while($boucle = mysql_fetch_array($index))
{
?>
<option value="<?php echo $boucle['motcledl'] ;?>" >
<?php
echo $boucle['motcledl'] ;?></option>
<?php
}
?>
Pas toujours évident à lire car beaucoup de <? et ?> ce qui rend a lecture difficile et augmente le risque d'erreurs
je te conseille (c'est comme cela que je fais) de coder tout en PHP :
<?php
$index = mysql_query ("SELECT * FROM categorie");
while($boucle = mysql_fetch_array($index))
echo "<option value='".$boucle['motcledl']."'>".$boucle['motcledl']."</option>";
echo " </select>
<input type='submit' value='Rechercher'>
</td></tr>
</table>
</form> ";
J'attends ta réponse pour le type d'erreur que tu rencontres ...
toine512
Messages postés
137
Date d'inscription
mercredi 19 août 2009
Statut
Membre
Dernière intervention
3 décembre 2011
11
12 sept. 2009 à 18:32
12 sept. 2009 à 18:32
Quand tu as beaucoup de caractères spéciaux genre ' c'est plus simple de fermer la balise PHP et de continuer en HTML.
fred_bgt
Messages postés
153
Date d'inscription
mercredi 31 décembre 2008
Statut
Membre
Dernière intervention
12 septembre 2009
22
>
toine512
Messages postés
137
Date d'inscription
mercredi 19 août 2009
Statut
Membre
Dernière intervention
3 décembre 2011
12 sept. 2009 à 18:34
12 sept. 2009 à 18:34
je sais bien.
Mais c'est une question d'habitude. Je préfère utiliser ' et " et \" et \' que <? et ?> à tout bout de champ
mais ce n'était pas l'objet de la question, il est vrai ...
Mais c'est une question d'habitude. Je préfère utiliser ' et " et \" et \' que <? et ?> à tout bout de champ
mais ce n'était pas l'objet de la question, il est vrai ...
toine512
Messages postés
137
Date d'inscription
mercredi 19 août 2009
Statut
Membre
Dernière intervention
3 décembre 2011
11
>
fred_bgt
Messages postés
153
Date d'inscription
mercredi 31 décembre 2008
Statut
Membre
Dernière intervention
12 septembre 2009
12 sept. 2009 à 18:34
12 sept. 2009 à 18:34
C'est ton choix ;)
J'ai oublié la moitié de ta question dsl, ça n'affiche aucune erreur, ça n'affiche rien en fait, ça doit être une toute petite erreur mais alors... elle m'ennuie!
toine512
Messages postés
137
Date d'inscription
mercredi 19 août 2009
Statut
Membre
Dernière intervention
3 décembre 2011
11
12 sept. 2009 à 18:36
12 sept. 2009 à 18:36
<?php
if (isset($_POST['motcledl']))
{
if (empty($_POST['motcledl'])) // Si c'est vide alors un message apparait a l'utilisateur
echo "Veuillez selectionner une categorie";
else
{
$sql = "SELECT * FROM objets WHERE numeroObjet='".$_POST['motcledl']."'";
$rs = mysql_query($sql); // execution de la requête
while ($row = mysql_fetch_array($rs)) // parcours des résultats
{
// debut d'une ligne
if ($cpt%$nbCols==0) // on divise le nb d'element par le nb de colonnes. Si le reste est de 0 ...
echo '<tr>'; // ..., alors on est sur le premier element d'une ligne
// On place chaque element dans une cellule du tableau
Je suis loin d'être un professionel mais là ya un problème !!!
Les conditions ne sont ni ouvertes .. ni fermées ... euh on peut faire ça ?
if (isset($_POST['motcledl']))
{
if (empty($_POST['motcledl'])) // Si c'est vide alors un message apparait a l'utilisateur
echo "Veuillez selectionner une categorie";
else
{
$sql = "SELECT * FROM objets WHERE numeroObjet='".$_POST['motcledl']."'";
$rs = mysql_query($sql); // execution de la requête
while ($row = mysql_fetch_array($rs)) // parcours des résultats
{
// debut d'une ligne
if ($cpt%$nbCols==0) // on divise le nb d'element par le nb de colonnes. Si le reste est de 0 ...
echo '<tr>'; // ..., alors on est sur le premier element d'une ligne
// On place chaque element dans une cellule du tableau
Je suis loin d'être un professionel mais là ya un problème !!!
Les conditions ne sont ni ouvertes .. ni fermées ... euh on peut faire ça ?
Je ne suis pas non plus professionnelle à vrai dire. Mais j'ai montré mon code à mon prof de prog et il ne m'a rien dit là-dessus... ni mon maître de stage, en fait quand j'étais en stage à la fin mon site marchait niquel, et là sans avoir rien touché il bug, c'est ça que je ne comprends pas... je vais tenter de revoir mon prof lundi pour qu'il se penche bien sur la question. Merci pour votre aide c'est très gentil !
toine512
Messages postés
137
Date d'inscription
mercredi 19 août 2009
Statut
Membre
Dernière intervention
3 décembre 2011
11
12 sept. 2009 à 18:42
12 sept. 2009 à 18:42
Oulah c'est tordu ça ! Ca provient peut-être plus de la base MySQL que de ton code si ça fonctionnais ...
Enfin c'est pas normal !
Enfin c'est pas normal !