Substr

cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 - 10 avril 2006 à 01:06
cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 - 10 avril 2006 à 21:31
Bonjour, je suis sous mySQL et j'ai un petit problème avec une requête



Voici à quoi elle ressemble

SELECT t.tid, t.subject, COUNT( t.fid ) AS nb, f.fid, f.name, f.private, f.userlist, f.writelist, f.password

FROM o2_log l, o2_threads t

LEFT JOIN o2_forums f ON f.fid = t.fid

WHERE f.status = 'yes'

AND substr(

l.url, 27

) = t.tid

AND substr(

l.url, 1, 26

) = '/o2php/viewthread.php?tid='

AND l.username LIKE '%jimpunk%'

AND l.time >=1136674258

GROUP BY t.fid

ORDER BY l.time DESC

LIMIT 0 , 30


sous phpmyadmin elle marche numéro 1, mais sous php, elle fonctionne pas

l'erreur est celle-ci

1064 : Erreur de syntaxe près de 'FROM o2_log l, o2_threads t LEFT JOIN o2_forums f ON f.fid = t.f' à la ligne 1



à force de tester, je me suis rendu compte que
dès qu'il y a un résultat, ça plante, mais s'il y en a pas, ça passe.
Je crois que l'erreur proviens du substr, puisqu,il se compare avec un
type Entier et substr retourne un type VarChar



mais pourquoi sous phpmyadmin, ça passe et pas sous php ???



merci

-------------------------------------------------
Dragon alias aussi Waxime mais bon, pas le gout de refaire un nouveau profil lol
-------------------------------------------------

4 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
10 avril 2006 à 09:07
Hello,

AND substr(
l.url, 27
) = t.tid

tu as oublié les quotes.
0
cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 6
10 avril 2006 à 14:22
de m'avoir répondu, mais les quotes sont pas obligatoire


<TR style="FONT-SIZE: 11px; FONT-FAMILY: Verdana" bgcolor="#efefef"><TD>The specific Error was:</TD><TD>1064 : Erreur de syntaxe près de 'FROM `o2_log` l, `o2_threads` t LEFT JOIN `o2_forums` f ON f.`fi' à la ligne 1
</TD></TR><TR style="FONT-SIZE: 12px; FONT-FAMILY: Monospace" bgcolor="#efefef"><TD style="FONT-SIZE: 11px; FONT-FAMILY: Verdana">
SQL Query :</TD><TD>SELECT FROM `o2_log` l, `o2_threads` t LEFT JOIN `o2_forums` f ON f.`fid` = t.`fid` WHERE f.`status`='yes' AND substr(l.`url`, 27) = t.`tid` AND substr(l.`url`, 1, 26) = '/o2php/viewthread.php?tid=' AND l.username LIKE '%Waxime%' AND l.time >= 1136722814

</TD>ça se pourrais-tu que ça cause ec problème si des url sont plus petit que 27 ???</TR>


-------------------------------------------------
Dragon alias aussi Waxime mais bon, pas le gout de refaire un nouveau profil lol
-------------------------------------------------
0
cs_Anthomicro Messages postés 9433 Date d'inscription mardi 9 octobre 2001 Statut Membre Dernière intervention 13 avril 2007 8
10 avril 2006 à 15:11
test


test



<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
0
cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 6
10 avril 2006 à 21:31
oups, je suis tombé sur un bug du forum lol


-------------------------------------------------
Dragon alias aussi Waxime mais bon, pas le gout de refaire un nouveau profil lol
-------------------------------------------------
0
Rejoignez-nous