Signaler

[script php-mysql] afficher prenom like A% [Résolu/Fermé]

Posez votre question Utilisateur anonyme - Dernière réponse le 11 avril 2010 à 17:26 par Utilisateur anonyme
Voila j'ai une base de donnée avec une table ou ya des information sur des personnes..
et je veux les trier par ordre alphabétique

perso.php --> Lien vers lettre_perso.php?lettre=A ou B ou C .....
lettre_perso.php--> Affiche tout les noms qui commence par A

Exemple:
Donnée: Ma Table = personnage ||| le champ = prenom

mon script :

<?php
$lettre = $_GET['lettre'];
$base = Mysql_connect("", "", "");
Mysql_select_db ('naruto', $base);
$sql = 'SELECT * FROM personnage WHERE prenom LIKE ''.$lettre.'%' ';
$req = mysql_query($sql) or die ('Erreur SQL !<br/>'.$sql.'<br/>'.mysql_error());

while ($data = mysql_fetch_array($req))
{
?>
<p><a href="choix_perso.php?nom=<?php echo $data['prenom']; ?>"><?php echo $data['prenom'];?></a></p>
<?php
}
mysql_free_result ($req);
mysql_close ();
?>


Question :

sa m'affiche un erreur et j'ai bo chercher je ne la trouve pas :S pourriez vous m'aidez

Merci d'avance au future répondeur :D

Utile
+1
plus moins
Oui merci Beaucoup pour ton aide j'ai juste un autre soucis :S

je dois trier que le prenom commence par S mais je dois prendre aussi la valeur du champ nom

donc je voudrais que sa m'affiche

Prénom Nom ---> mais que le Like 'S%' ne fasse effet que sur le prénom :S
Cette réponse vous a-t-elle aidé ?  
Utile
+0
plus moins
Bonjour,
il y a un problème en tre tes ' et tes " ici: ''.$lettre.'%' '
Utile
+0
plus moins
bas la donnée du like dois se tenir entres des crochet --> LIKE ''

après je dois faire une concaténisation de la variable $lettre et après je dois rajouter le % pour dire que je veux la lettre suivit de tout les caractère possible..

donc sa fais

'.. LIKE ' ' . . '% ' '

il faut aussi rajouter les ' ' des la requêt mysql :S
Utile
+0
plus moins
j'aurais plutôt vu ça comme ça
''.$lettre.'%' " ';
Utile
+0
plus moins
les " sont :

2x ' ou 1x " ?
Utile
+0
plus moins
1x"
Utile
+0
plus moins
je pensais aussi
prendre la variable lettre et faire une variable ou il y aurais le % dedans

Genre

$lettre = $_GET['lettre'];
$rechlettre = ' ' . $lettre . ' % ';

et mettre $rechlettre dans LIKE sans devoir se casser la tête ?

est ce que mon idée parrais bonne ?
Utile
+0
plus moins
Je ne sais si ce genre de concaténation marche mais essai
Utile
+0
plus moins
:S

Ya plus d'erreur mais sa m'affiche sa ....
______________________________________________

Erreur SQL !
SELECT * FROM personnage WHERE prenom LIKE S%
Erreur de syntaxe près de '%'

_____________________________________________

LIKE ' . $rechlettre . '

Sa s'utilise bien comme sa le LIKE non?
Utile
+0
plus moins
je comprend pas LIKE S%
Utile
+0
plus moins
Bah sa sélection la valeur (le prénom) qui a S suivi d'autre caractére

donc sa sélectionne le prenom qui commence par S
Utile
+0
plus moins
oui normalement c'est bien LIKE 'S%'
Utile
+0
plus moins
xD comme quoi deux petite caractère peuvent nous prendre des heures et des heures ...

se n'ai pas LIKE ' . $variable . '

Mais LIKE " ' . $variable . ' "


Le Like c'est Like "" et pas Like ' '
Utile
+0
plus moins
c'est ce que j'avais dis un problème de guillemet^^ toujours les mêmes problèmes
Utile
+0
plus moins
bah c'est bon comme tu l'as écrit le like ne prend effet que sur le prénom et non sur le nom
Utile
+0
plus moins
Super sa marche bien :D en tout que a merci beaucoup

je peux enfin mettre se topic résolus xD YEEESS

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !