|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
Bonsoir,
Ma question est en fait 2 questions: 1° Comment afficher une liste de films en faisant passer la 1ère lettre du film ? Est-ce possible par SQL svp ? 2° Est-ce possible de faire un mini moteur de recherche simple à mettre en place avec des capacités limitées ça va sans dire J'aurais aimé proposé un début de code ou de SQL mais j'avou ne jamais avoir fais ça donc je ne sais pas du tout comment commencer... Quelqu'un peut m'aider svp ? Merci d'avance... |
|
|
00
|
|
|
#2 |
|
Inactif
![]() Inscription : septembre 2004 Messages : 11 753 ![]() |
Alors tu peux faire comme ceci si tu as la première lettre :
Code :
SELECT titre, id FROM table_film WHERE titre LIKE talettre%
|
|
|
00
|
|
|
#3 | |
|
Expert Confirmé
![]() ![]() Inscription : avril 2003 Messages : 3 286 ![]() |
Citation:
Code :
SELECT * from `films` WHERE `titre` LIKE "M%"
__________________
Tous mes tutoriels Pas de questions techniques par MP ni par e-mail, merci ! Prolog rules! |
|
|
|
00
|
|
|
#4 |
|
Inactif
![]() Inscription : septembre 2004 Messages : 11 753 ![]() |
Et je rajoute ceci : La clause WHERE
Qui te donnera des informations supplémentaires sur les possibilités de recherche |
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
Merci pour les réponses dsl pour le retard dans la réponse mais je me suis apperçu d'un autre petit soucis en me heurtant au problème de moteur de recherche.
J'ai une base qui devient conséquente et jusqu'à présent je créais des fichiers "films.php" où j'affichais 10 résultats "films2.php" encore 10 "films3.php"... ma base grossi donc ça devient ingérable non ? Il me semblait avoir lu quelque part que l'on pouvait gérer ça autrement, me trompe-je svp ? |
|
|
00
|
|
|
#6 |
|
Membre éclairé
![]() Chef de projet MOA Inscription : décembre 2004 Messages : 561 ![]() |
Le plus simple c'est de faire un seul fichier film.php et de faire un système de pages.
Par exemple dans ta page film.php tu fais un lien sur le mot "suivant" qui pointe vers ta page film.php. Tu passe en paramètre un numéro de page (par exemple le numéro de la page courante que tu stockes dans une variable) incrémenté de 1 et tu mets à jour ta variable page courante. Ensuite tu créées une instruction sql qui tienne compte de ta page en cours (exemple: si page = 2 alors affiche les enregistrement ($page_courante*10) à ($page_courante*10)+10) De même avec d'autres liens (page précédente, première page, dernière page). |
|
|
00
|
|
|
#7 | |||||
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
Citation:
Code :
Code :
|
|||||
|
|
00
|
|
|
#8 |
|
Membre éclairé
![]() Chef de projet MOA Inscription : décembre 2004 Messages : 561 ![]() |
Oui ça doit ressembler à ça. A partir de ce principe on a chacun notre manière de programmer... l'essentiel c'est que ça fonctionne ;-)
C'est laquelle ta ligne 91? |
|
|
00
|
|
|
#9 | |||
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
Citation:
Ligne 91 Code :
|
|||
|
|
00
|
|
|
#10 | |
|
Membre éclairé
![]() Chef de projet MOA Inscription : décembre 2004 Messages : 561 ![]() |
$_GET['page']-1 doit être entre parenthèse. Essaie comme ça:
Citation:
|
|
|
|
00
|
|
|
#11 | |||
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
Citation:
Code :
|
|||
|
|
00
|
|
|
#12 |
|
Membre éclairé
![]() Chef de projet MOA Inscription : décembre 2004 Messages : 561 ![]() |
A mon avis il faut que tu remplaces ta requete
$select = "SELECT * from `films` ORDER BY nomfilm;"; Par $select = "SELECT * from `films` ORDER BY nomfilmLIMIT $debut, $nombre_resultats;"; Et il faut que tu places ton bloc php dans lequel tu calcules $debut et $nombre_resultats juste avant ta requête SELECT * from `films` ORDER BY nomfilm; |
|
|
00
|
|
|
#13 | |||
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
Citation:
Code :
|
|||
|
|
00
|
|
|
#14 | ||
|
Membre éclairé
![]() Chef de projet MOA Inscription : décembre 2004 Messages : 561 ![]() |
Si tu veux voici ce que j'utilise pour mes pages:
J'ai 2 fichiers: gestion_pages.inc: Citation:
$numrow correspond au nombre d'enregistrement maximum de la requête. Et dans mes fichiers php: Citation:
|
||
|
|
00
|
|
|
#15 | |
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
Citation:
si c'est vraiment impossible je resterai sur ma solution pour essayer de la faire marcher |
|
|
|
00
|
|
|
#16 | ||
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
Voilà mon code final, il fonctionne
Code :
|
||
|
|
00
|
|
|
#17 |
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
C'est bon j'ai fais avec des <div> simple et ça marche bien reste à m'atteler sur le moteur de recherche maintenant
|
|
|
00
|
|
|
#18 | ||
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
Code :
@ tchaOo° |
||
|
|
00
|
|
|
#19 | ||||
|
Membre régulier
![]() Inscription : mai 2005 Messages : 656 ![]() |
J'ai un problème avec mon moteur de recherche:
Code :
Code :
Merci d'avance... |
||||
|
|
00
|
|
|
#20 |
|
Membre chevronné
![]() Inscription : décembre 2005 Messages : 766 ![]() |
wow... c'est un peu le bordel ta requete sql... tu peux pas faire ça comme ça...
1 tu as des simple quotes échapées pour rien dans ta requète 2 tu n'echape pas les charactères sensibles avec mysql_real_escape_string() ce qui représente un risque potentiel de sécurité 3 tu ne peux faire qu'un like sinon il va falloir utiliser les jointures (à vérifier) 4 ta boucle for génère je ne sais quoi d'autant plus que $operateur est idéfinis @ tchaOo° |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com