[PHP + SQL] explications + code inside (requete SQL)

explications + code inside (requete SQL) [PHP + SQL] - Programmation

Marsh Posté le 12-02-2002 à 23:01:57    

Voilà, j'ai ce code qui marche parfaitement :  

Code :
  1. $Lettre=array(0=>"a","b","c","d","e","f
  2. ","g","h","i","j","k","l","m","n"
  3. ,"o","p","q","r","s","t","u","v",
  4. "w","x","y","z" );
  5. for ($I=0;$I<26;$I++)
  6. {echo "<A Href=\"main.php3?Menu=mangas&Choix=$Lettre[$I]&Start=0&Limit=5&Version=$Version\"><FONT size=\"1\" color=\"#FFFFFF\" face=\"Arial\"><B>$Lettre[$I]</B></FONT></A>  ·  ";}
  7. If ($Choix=="" ){$Choix="a";}
  8. ?>
  9. <BR><BR>
  10. <TABLE width="600" cellspacing="0" cellpadding="2" border="0">
  11. <?
  12. $Query="select COUNT(ID) from mangas where Titre like '$Choix%' && Version like '$Version'";
  13. $Result=MYSQL_QUERY ("$Query" );
  14. $Row=MYSQL_FETCH_ROW ($Result);
  15. $Query1="SELECT Titre,Auteur,Nbvol,Editeur,Ended,Version,Image from `mangas` Where Titre like '$Choix%' && Version like '$Version' ORDER BY Titre ASC LIMIT $Start,$Limit";
  16. $Result1=MYSQL_QUERY ("$Query1" );
  17. While ($Tab=MYSQL_FETCH_ROW ($Result1))
  18. {
  19. if ($Tab[4]=="OUI" ){$Tab[4]="Série Complète";}
  20. if ($Tab[4]=="NON" ){$Tab[4]="Série En Cours";}
  21. if ($Tab[2]>"1" ){$Volume="Volumes";}
  22. if ($Tab[2]=="1" ){$Volume="Volume";}
  23. if ($Tab[6]=="" ){$Tab[6]="wait";}
  24. echo "
  25. <TR valign=\"top\">
  26.   <TD><IMG src=\"http://ailleurs.tours.free.fr/images/mangas/$Version/$Tab[6].jpg\" width=\"80\" height=\"110\"></TD>
  27.   <TD>
  28.   $Tab[0]<BR>
  29.   Par $Tab[1]<BR>
  30.   $Tab[2] $Volume<BR>
  31.   $Tab[4]<BR>
  32.   Edtiter par $Tab[3]<BR>
  33.   Version : $Tab[5]</TD>
  34. </TR>
  35. ";
  36. }


 
vous aurez tus compris à koi il sert...
maintenant, le problème est que ça marche nickel tant que j'ai des lettres... mais je voudrais aussi ajouter les chiffres, sans pour autant mettre dans mon array : 1, 2, 3, 4..., mais 0-9 et que ça me cherche les Titre, Auteur, Nbvol, Editeur, Ended, Version, Image de ma table 'mangas' où le titre commence par quelque chiffre que ce soit...
qq1 connait ce pb, à eu à y faire, connais la réponse ??...
 
j'attend avec une certaine impatience vos réponses, @+

Reply

Marsh Posté le 12-02-2002 à 23:01:57   

Reply

Marsh Posté le 13-02-2002 à 11:07:59    

[:tomilou]

Reply

Marsh Posté le 21-02-2002 à 18:36:02    

:cry:  :cry:  :bounce:  :cry:  :cry:

Reply

Marsh Posté le 22-02-2002 à 00:53:15    

D'abord, met çà dans le tableau :
$Lettre=array(0=>"a","b","c","d","e","f
","g","h","i","j","k","l","m","n"
,"o","p","q","r","s","t","u","v",
"w","x","y","z","0-9")
;
 
Ne pas oublier :
for ($I=0;$I<27;$I++)  
 
Ensuite, le problème, c'est de remplacer le : "Titre like '$Choix%'" dans Query et Query1 par autre chose.
 
Je te propose de faire çà :  
 
if( $Choix == "0-9" )
   $condChoix = "LEFT(Titre,1) BETWEEN '0' AND '9'";
else
   $condChoix = "Titre like '$Choix%'";
 
Ensuite, tu as juste à remplacer $Query et $Query1 par :
 
$Query="select COUNT(ID) from mangas where $condChoix && Version like '$Version'";  
 
$Query1="SELECT Titre,Auteur,Nbvol,Editeur,Ended,Version,Image from `mangas` Where $condChoix && Version like '$Version' ORDER BY Titre ASC LIMIT $Start,$Limit";  
 
Cà devrait le faire !

 

[jfdsdjhfuetppo]--Message édité par Mara's dad--[/jfdsdjhfuetppo]


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed