France Hardware : Forums de discussion
Retrouvez les prix près de chez vous :  
Index du forum | Liste des membres | Liste des groupes | Inscription | F-A-Q | Recherche
Pseudo :    Password :     
23 068 membres enregistrés - 1 897 086 posts - 97 466 topics
Index des forums FH  | Index des forums DegroupNews
      Programmation
           Langages Web
                [PHP/Mysql] Mon topic problèmes (Pas de problème en cours...)
15 connectés(record : 207 le 05 juin 2007 - 05 h 23)

Vous devez vous connecter pour répondre au topic.
1,2,3 | Suivant
[PHP/Mysql] Mon topic problèmes (Pas de problème en cours...)

TorTue
"Je sais que je ne sais rien."

Messages : 2 137
Inscrit le 21/05/02
Ville : Saint Martin en Haut (69)
Non connecté
  Posté le 15 mai 2004 - 22 h 15 m 51 s
Bonjour à tous ! :hello:

Problème 1 :
Bon alors je voudrais faire unn affichage séléctif d'une base de données. Je m'explique. J'ai tout une liste de nom dans ma base de données. J'ai également un alphabet d'afficher sur ma page web, et je voudrais que lorque quelqu'un click sur une lettre seul les noms dont la PREMIERE lettre commence par la lettre sélectionnée s'affiche.

Seulement voilà je suis bloquée sur la commande sql à faire.

J'ai essayé (ici j'ai pris pour exemple la lettre A) :
    Code     
1. SELECT * FROM 'ma_table' WHERE 'mon_champ'='A'
mais ça n'affiche que les noms qui sont exactement A (normal) puis :
    Code     
1. SELECT * FROM 'ma_table' WHERE substr(mon_champ,0,1)='A'
la fonction substr n'étant pas reconnu sous mysql puis :
    Code     
1. SELECT * FROM 'ma_table' WHERE substring(mon_champ,0,1)='A'
mais il ne trouve jamais rien ! Solution1 :
    Code     
1. $requete="SELECT * FROM ma_table WHERE mon_champ like 'A%' ";
Merci Novo Problème 2 : Sur mon alphabet, quand je click dessus, la page se relance mais ça met pas à jour la variable pourtant l'URL en haut change. Elle est du type : http://monsite/index.php?lettre=A Mais ça garde la lettre à laquelle j'initialise ma variable avec :
    Code     
1. if(!isset($letter)) {
2. $letter = "B"; }
Ici, $letter restera toujours à B bien que dans l'url ce soit marqué A Solution 2 : Il faut utiliser $_GET['letter'] et non $letter (Merci Erel) Problème 3 : Lors du premier lancement de la page dans l'URL il n'y a pas par exemple index.php?letter=A mais juste index.php donc ça me dit la première fois :
    Code     
1. Notice: Undefined index: letter in d:logicielseasyphp1-7wwwfilms sqlindex.php on line 9
Et mes lignes 8-9 sont :
    Code     
1. if (!isset($letter)) { $letter = "A"; }
2. $letter=$_GET['letter'];
Après un F5, c'est bon y'a plus le message mais j'aimerais qu'il n'y soit pas la première fois non plus. Solution 3 :
    Code     
1. if( isset($_GET['letter']) && eregi('^[a-z]{1}$',$_GET['letter']) )
2.     $letter = $_GET['letter'];
3. else
4.     $letter = 'A';
(Merci Erel) Et pour mon cas perso :
    Code     
1. if( isset($_GET['letter']) && eregi('^([a-z0-9]|_ALL){1}$',$_GET['letter']) )
2.     $letter = $_GET['letter'];
3. else
4.     $letter = 'A';
Problème 4 : Voilà j'ai un formulaire :
    Code     
1. <form method=post action=inscr.php>
mais à la place de inscr.php j'aimerais que ça appelle une fonction qui est dans le même fichier php que mon formulaire verif() Problème 5 : Je crée une page web avec du code html et php, genre http://membres.lycos.fr/xxx/xxx/accueil.php?name=NOM&prenom=PRENOM Dans la même page j'utilise un petit bout de code pour écrire dans un fichier texte. Jusque là, aucun problème. Cependant j'aimerais savoir comment on récupère l'URL courante ? J'utilise actuellement
    Code     
1. $spy['host'] = gethostbyaddr($_SERVER['REMOTE_ADDR']);
mais ça ne me récupère que /xxx/xxx/accueil.php
Je n'ai pas les paramètres après.

Solution 5 :
Les paramètres c'est $_SERVER['QUERY_STRING'] Merci Erel.

Des idées ?

Merci d'avance :jap:


Message édité 8 fois, la dernière par TorTue le 23 septembre 2004 - 20 h 27.

http://www.les5elements.com/

Novocaine
Novo pour les intimes...

Messages : 3 593
Inscrit le 16/04/02
Ville : Villeurbannne
Non connecté
  Posté le 15 mai 2004 - 22 h 24 m 02 s
    Code     
1. $requete="SELECT * FROM ma_table WHERE mon_champ like 'A%' "


Message édité 1 fois, la dernière par Novocaine le 15 mai 2004 - 22 h 24.

Comme le dit si bien Eels
Novocaine for the soul

-------------------------------------
Le punch de Dohko, moi j'aime ça :D ! ^_^


TorTue
"Je sais que je ne sais rien."

Messages : 2 137
Inscrit le 21/05/02
Ville : Saint Martin en Haut (69)
Non connecté
  Posté le 15 mai 2004 - 22 h 29 m 12 s


Le 15 mai 2004 à 22 h 24, Novocaine a écrit :
    Code     
1. $requete="SELECT * FROM ma_table WHERE mon_champ like 'A%' "



:jap:

:cutter:



http://www.les5elements.com/

TorTue
"Je sais que je ne sais rien."

Messages : 2 137
Inscrit le 21/05/02
Ville : Saint Martin en Haut (69)
Non connecté
  Posté le 15 mai 2004 - 22 h 46 m 32 s


Le 15 mai 2004 à 22 h 24, Novocaine a écrit :
    Code     
1. $requete="SELECT * FROM ma_table WHERE mon_champ like 'A%' "
J'ai également trouvé :
    Code     
1. SELECT * FROM ma_table WHERE substrting(mon_champ,1,1) = 'A'


EDIT du premier post pour un deuxième problème !



http://www.les5elements.com/

Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 16 mai 2004 - 00 h 10 m 59 s


Le 15 mai 2004 à 22 h 24, Novocaine a écrit :
    Code     
1. $requete="SELECT * FROM ma_table WHERE mon_champ like 'A%' "
et si c'est pas case-sensitive :
Le 15 mai 2004 à 22 h 24, Novocaine a écrit :
    Code     
1. $requete='SELECT * FROM ma_table WHERE LOWER(mon_champ) like "a%";'




Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 16 mai 2004 - 00 h 12 m 07 s
Problème 2 :

Il faut utiliser $_GET['letter'] et non $letter



Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

alitokmen
Think ®

Messages : 3 687
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 16 mai 2004 - 08 h 23 m 57 s


Le 16 mai 2004 à 00 h 12, Erel69 a écrit :
Problème 2 :

Il faut utiliser $_GET['letter'] et non $letter


Pas obligatoirement... Ça dépend de la config du serveur si register_globals et actif pas besoin

(PS: important: les hébergeurs le mettent à ON généralement!!)

Donc en fait faut faire attention aussi quand on code de ne JAMAIS utiliser des variables en disant que c'est vide pas défaut...


Message édité 1 fois, la dernière par alitokmen le 16 mai 2004 - 08 h 27.

S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 16 mai 2004 - 11 h 09 m 18 s


Le 16 mai 2004 à 08 h 23, alitokmen a écrit :


Le 16 mai 2004 à 00 h 12, Erel69 a écrit :
Problème 2 :

Il faut utiliser $_GET['letter'] et non $letter


Pas obligatoirement... Ça dépend de la config du serveur si register_globals et actif pas besoin

(PS: important: les hébergeurs le mettent à ON généralement!!)

Donc en fait faut faire attention aussi quand on code de ne JAMAIS utiliser des variables en disant que c'est vide pas défaut...


je parle de son cas (car c'est visiblement le problème)



Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

alitokmen
Think ®

Messages : 3 687
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 16 mai 2004 - 11 h 44 m 56 s


Le 16 mai 2004 à 11 h 09, Erel69 a écrit :
je parle de son cas (car c'est visiblement le problème)


Yep.... Yep....

C'était aussi pour parler du reglage register_globals ... enfin pô grave :D



S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


KibitO
Betty Boop ma chérie je t\\\'aime plus que tout !!

Messages : 1 715
Inscrit le 22/02/02
Ville : Chassagny
Non connecté
  Posté le 16 mai 2004 - 13 h 58 m 54 s


Le 16 mai 2004 à 11 h 44, alitokmen a écrit :


Le 16 mai 2004 à 11 h 09, Erel69 a écrit :
je parle de son cas (car c'est visiblement le problème)


Yep.... Yep....

C'était aussi pour parler du reglage register_globals ... enfin pô grave :D


C'est le nouveau EasyPHP c ça ? Moi j'utilise aucun des $_GET[] ou $_POST[]...
C'est devenu obligatoire pour les serveurs Free par exemple ? Nan il faut me le dire de suite avant que je retape tout mon code..



KibitO Piccoloo Porto

Ooooohhhhoooohohohoh I Love U So, Oooooohohohohooohohoooooo I Need You So
(© Wampas)

!! DefraK !!


Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 16 mai 2004 - 15 h 03 m 46 s
houlà, je te conseille tout de suite d'utiliser les $_GET[] et consorts !



Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

KibitO
Betty Boop ma chérie je t\\\'aime plus que tout !!

Messages : 1 715
Inscrit le 22/02/02
Ville : Chassagny
Non connecté
  Posté le 16 mai 2004 - 16 h 01 m 43 s
Ah ouais ? Ca risque de créer des problemes par la suite ?



KibitO Piccoloo Porto

Ooooohhhhoooohohohoh I Love U So, Oooooohohohohooohohoooooo I Need You So
(© Wampas)

!! DefraK !!


TorTue
"Je sais que je ne sais rien."

Messages : 2 137
Inscrit le 21/05/02
Ville : Saint Martin en Haut (69)
Non connecté
  Posté le 16 mai 2004 - 20 h 52 m 07 s


Le 16 mai 2004 à 00 h 12, Erel69 a écrit :
Problème 2 :

Il faut utiliser $_GET['letter'] et non $letter


:jap:

:cutter:

PS : Edit du premier post pour Problème n°3 :-P



http://www.les5elements.com/

Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 16 mai 2004 - 20 h 55 m 13 s


Le 16 mai 2004 à 20 h 52, TorTue a écrit :
PS : Edit du premier post pour Problème n°3 :-P


bah je le vois pas :P



Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 16 mai 2004 - 20 h 57 m 34 s


Le 16 mai 2004 à 20 h 55, Erel69 a écrit :


Le 16 mai 2004 à 20 h 52, TorTue a écrit :
PS : Edit du premier post pour Problème n°3 :-P


bah je le vois pas :P

ayé :D



Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

TorTue
"Je sais que je ne sais rien."

Messages : 2 137
Inscrit le 21/05/02
Ville : Saint Martin en Haut (69)
Non connecté
  Posté le 16 mai 2004 - 20 h 58 m 36 s


Le 16 mai 2004 à 20 h 55, Erel69 a écrit :


Le 16 mai 2004 à 20 h 52, TorTue a écrit :
PS : Edit du premier post pour Problème n°3 :-P


bah je le vois pas :P


2s mes paroles vont plus vite que mon 56k ! ;-)



http://www.les5elements.com/

Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 16 mai 2004 - 21 h 01 m 26 s
En passant, ton code ca devrait pas être :

    Code     
1. if( isset($_GET['letter']) && eregi('^[a-z]{1}$',$_GET['letter']) )
2.     $letter = $_GET['letter'];
3. else
4.     $letter = 'A';
ps : enlever les '.' autour des accollades bien sûr au lieu de
    Code     
1. if (!isset($letter)) { $letter = "A"; }
2. $letter=$_GET['letter'];


Message édité 2 fois, la dernière par Erel69 le 16 mai 2004 - 21 h 03.

Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

TorTue
"Je sais que je ne sais rien."

Messages : 2 137
Inscrit le 21/05/02
Ville : Saint Martin en Haut (69)
Non connecté
  Posté le 16 mai 2004 - 21 h 18 m 31 s


Le 16 mai 2004 à 21 h 01, Erel69 a écrit :
En passant, ton code ca devrait pas être :

    Code     
1. if( isset($_GET['letter']) && eregi('^[a-z]{1}$',$_GET['letter']) )
2.     $letter = $_GET['letter'];
3. else
4.     $letter = 'A';
ps : enlever les '.' autour des accollades bien sûr au lieu de
    Code     
1. if (!isset($letter)) { $letter = "A"; }
2. $letter=$_GET['letter'];
Ton code marche mais il me faut aussi les nombres qui vont de 0 à 9 aussi. J'ai donc changé en :
    Code     
1. if( isset($_GET['letter']) && (eregi('^[a-z]{1}$',$_GET['letter'])||eregi('^[0-9]{1}$',$_GET['letter'])||eregi(_ALL,$_GET['letter'])) )
2.     $letter = $_GET['letter'];
3. else
4.     $letter = 'A';


_ALL étant une variable ne faisant affiché tout les noms.



http://www.les5elements.com/

Erel69
206
(¯`·.__[T3aM.L1b3rTe©]__.·´¯)

Messages : 19 449
Inscrit le 07/11/01
Ville : Lyon
Non connecté
  Posté le 17 mai 2004 - 01 h 01 m 48 s
fait ça alors :

    Code     
1. if( isset($_GET['letter']) && eregi('^([a-z0-9]|_ALL){1}$',$_GET['letter']) )



Obscurité au-delà du crépuscule, pourpre au-delà du sang qui coule, enfoui dans le flot du temps, en ton haut nom, je jure fidélité à l'obscurité. Que les fous qui se dressent devant nous soient détruits, par le pouvoir que toi et moi possédons...

alitokmen
Think ®

Messages : 3 687
Inscrit le 19/09/02
Ville : Grenoble, France || Ankara, Turquie
Non connecté
  Posté le 17 mai 2004 - 02 h 57 m 52 s


Le 16 mai 2004 à 13 h 58, KibitO a écrit :

C'est le nouveau EasyPHP c ça ? Moi j'utilise aucun des $_GET[] ou $_POST[]...
C'est devenu obligatoire pour les serveurs Free par exemple ? Nan il faut me le dire de suite avant que je retape tout mon code..




Non c'est l'inverse en fait l'option est généralement mis à on chez tous les hébergeurs, donc faut toujours écrire son code en se basant sur ça



S. Ali Tokmen
http://ali.tokmen.com
http://contact.ali.tokmen.com


1,2,3 | Suivant
Page genérée en 1.2406 secondes par RahForum 2.0 | Gzip off |  Stats |  Metaforums |  RSS
© 2004 Cerbere Systems.
Prix Matériel Informatique | Informatique Lyon | Informatique Grenoble | Informatique Annecy | Informatique Marseille | Informatique Bordeaux | Forum Informatique
ADSL |Actualité ADSL | e-commerce | Commande Au Volant
Creative Commons
Message Boards and Forums Directory