[script php-mysql] afficher prenom like A%

Résolu
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

16 réponses

  1. 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
    1. Bonjour,
      il y a un problème en tre tes ' et tes " ici: ''.$lettre.'%' '
      1. 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
        1. 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 ?
          1. :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?
            1. 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
              1. 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 ' '
                1. c'est ce que j'avais dis un problème de guillemet^^ toujours les mêmes problèmes
                  1. bah c'est bon comme tu l'as écrit le like ne prend effet que sur le prénom et non sur le nom
                    1. Super sa marche bien :D en tout que a merci beaucoup

                      je peux enfin mettre se topic résolus xD YEEESS