peut-etre pb de Java script [wip] Gallerie php/mysql [Site Online] - PHP - Programmation
Marsh Posté le 09-07-2003 à 07:36:19
Vite fait un premier truc :
A moins que le code soit pas complet
tu fais un $row[id] mais nul part de mysl_fetch_* ou mysql_result
while($rubrique <> $rub) = ou est ce que ces variables sont initialisées et incrementées ?
$ut = $ut + 1; remplace par $ut++; c'est plus propre
Apres y a des erreurs de conceptions visualisation des choses surement mais j ai juste regarde la validité du code.
Marsh Posté le 09-07-2003 à 07:38:01
Sébastien a écrit : Vite fait un premier truc : |
ok merci
cette partie là est vraiment en contruction donc c'est vrai que j'ai pas tout mis.
en faite pour chaque image j'ai définit une rubrique ($rubrique) et dans chaque page j'ai définit la rubrique à afficher ($rub).
Marsh Posté le 09-07-2003 à 07:42:22
mais je peux te donner d autres pistes
Deja ne jamais utiliser id='$ut' il suffit qu une image n'existe plus ou que tu es une defaillance de ton $id et c foutu.
le truc a faire c compter le nombre d'images et faire des requetes avec des LIMIT
sinon question la diff c quoi
$impli = images par ligne
$nbrli = nombre d'image par ligne
Marsh Posté le 09-07-2003 à 07:50:45
Sébastien a écrit : mais je peux te donner d autres pistes |
oups, $nbrli c'est le nombre de lignes
Le prob c'est que j'ai envie de récupèrer les infos images par image. Donc là il faudrait que ma requète sql ait une condition pour la rubrique.
Ce qu'il me manque c'est comment faire passer à l'autre image?
Et il faut utiliser quoi pour compter les images?
merci de ta patience
Marsh Posté le 09-07-2003 à 09:15:44
dd_005 a écrit : |
tu peux faire en gros :
Code :
|
C'est un peu comme ca que je vois les choses sans trop reflechir dessus j'avoue (j ai jamais fait de telles choses, mais c comment ca que l'idée me vient)
Marsh Posté le 09-07-2003 à 09:35:10
dd_005 a écrit : Bonjour tout le monde
|
deja pour la requete il faut concaténer :
Code :
|
ou alors :
Code :
|
Marsh Posté le 09-07-2003 à 09:54:11
merci Sébastien et ratibus
Sébastien > avec ton code ma page n'arrive pas à s'afficher (il affiche tout jusqu'au code et après il patoge dans la semoule) ca peut venir de quoi?
edit: oups grosse gourde
edit':
Marsh Posté le 09-07-2003 à 10:10:12
Sébastien a écrit :
|
y'a quelques trucs que je comprend pas...
Marsh Posté le 09-07-2003 à 10:10:51
la boucle for ou while doit surement tourner dans en continue.
Marsh Posté le 09-07-2003 à 10:22:28
ok alors le prob doit surement venir de là
Code :
|
après le for il faut pas que je fasse un $i=$i++, ou bien c'est le $i+=$impli qui doit s'en charger??
Marsh Posté le 09-07-2003 à 10:30:51
en fait un $i++ te fait incrementer de 1pas moi je te fais aller de $impli à $impli pas
Verifie que ton $impli et ton $nbrli existent et ont des valeurs corrects
Marsh Posté le 09-07-2003 à 10:39:16
ahh, il m'a sorti enfin une erreure (j'ai fait un autre fichier ou j'ai déclaré les variables normallement)
Code :
|
erreure:
Code :
|
Marsh Posté le 09-07-2003 à 11:06:15
-pas de connection a mysql
-connection a ta base defaillante
-la table test ou le champ rubrique n'existe pas
Marsh Posté le 09-07-2003 à 11:28:38
Sébastien a écrit : -pas de connection a mysql |
je vois pas d'ou peu venir l'erreure et mysql tourne.
Code :
|
ca doit être ici l'erreure alors? mais où?
Marsh Posté le 09-07-2003 à 11:33:24
Sébastien a écrit :
|
je viens de voire que dans ton code tu utilisait pas le $nbre_img c'est normal ou un oubli??
Marsh Posté le 09-07-2003 à 11:52:50
on s'en sert la :
//ensuite tu peux faire un traitement pour savoir combien tu auras de lignes en faisant un modulo de ca par le nbre d'img par ligne.
tu as ecris ca :
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
mais je vois pas de $sql avant.
Marsh Posté le 09-07-2003 à 12:52:47
Sébastien a écrit : on s'en sert la : |
ahh oui ok, je l'ai placé au bon endroit je crois.
Code :
|
mais j'ai toujours le même prob de:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in d:\program files\easyphp\www\testmysql\test.php on line 30
je comprend pas, j'ai aussi essayé de changer $rub en mettant dirèctement un nombre dans le "select" mais ca change rien
Marsh Posté le 09-07-2003 à 14:09:03
dd_005 a écrit :
|
Citation : $sql="select count(*) from test where rubrique='$rub'"; |
Pk tu fais fais deux fois la requete ?
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$qw=mysql_query($sql);
Marsh Posté le 09-07-2003 à 14:23:39
Max Evans a écrit : |
j'ai pas compris
ahhh, ca m'inerve
une fois il y a une requête pour compter le nbre d'image et la 2èm c'est pour l'affichage des images
Marsh Posté le 09-07-2003 à 14:25:57
Peux tu me donner le code des lignes
28 29 30 et 31 stp :-)
Marsh Posté le 09-07-2003 à 14:28:04
Ha bah dans ce cas la :
$sql="select * from test where rubrique='$rub'";
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
// Ca te donne le nombre d'image ca, apres tu fais un echo $nombre pour afficher //
$nombre = mysql_numrows($req);
// Ca c'est pour afficher tes images, tu en as surement plusieurs, donc un WHILE //
while($data = mysql_fetch_array($req)){
echo "bla bla bla $data[nom de l'image par exemple]";
}
Marsh Posté le 09-07-2003 à 14:28:34
je suis même généreux alors voilà tout le code:
Code :
|
encore merci pour ta patience
Marsh Posté le 09-07-2003 à 14:38:32
Essaye ca vite fait
mais la j ai bcp de travail donc j arrive pas a reflechir correctement pour toi
Et peux tu me donner un desc de ta table stp
Code :
|
Marsh Posté le 09-07-2003 à 14:42:09
Sébastien a écrit : Essaye ca vite fait |
ok, je vais essayer ca. La table c'est qqch comme ca:
id
rubrique [1=web , 2=2D , 3=3D]
nom_fichier
taille_ko
date
commentaire
status [0=wip , 1=fini]
Marsh Posté le 09-07-2003 à 14:51:19
bon je viens d'essayer chez moi ca marche sauf qu'il faut rajouter une , dans le limit apres le $i :-D
En,fin ca marche a moitié je finis de corriger ce qu'il va pas et je te retourne le code correct
Marsh Posté le 09-07-2003 à 14:56:17
Code :
|
Voila code testé et approuvé chez moi :-D
Marsh Posté le 09-07-2003 à 15:16:37
Sébastien a écrit :
|
perfect
edit: ce que j'avais fait de faut
Marsh Posté le 09-07-2003 à 15:47:23
juste encore une petite question avant que je me lancer dans la gestion des pages
J'aimerais récupèrer différentes données de ma base mysql pour les afficher vers chaque image (genre status) mais j'ai du mal à imaginer commenr faire ca
Marsh Posté le 09-07-2003 à 16:02:18
ben a cote de l'image tu mets le $res[x] avec x correspond au champ status non ?
A moins que j ai pas compris la question.
Marsh Posté le 09-07-2003 à 16:04:38
Sébastien a écrit : ben a cote de l'image tu mets le $res[x] avec x correspond au champ status non ? |
ahh, merci beaucoup. en faite j'avais pas compris la fonction du $res[0]. Là tout devient claire
Marsh Posté le 09-07-2003 à 16:23:51
bon, en faite ca risque d'être chaud pour la gestion des pages.
En faite je pensais enregistrer dans une variable l'id de la 1ère et de la dernière image affichée.
Là je bloque déjà.
ensuite dans ma requête sql j'aurais mis "where rubrique='$rub' and id>'$dernièreImageAffichée'"
pff, plus j'y pense plus je vois de gros prob en perspective...
si vous avez une autre idée pour la gestion de mes pages
Marsh Posté le 09-07-2003 à 16:38:19
ben non c tout simple (enfin presque)
ca marche exactement pareil que pour le nombre d'image par ligne.
En gros :
tu as 1200 images avec 60 images par page
donc 20 pages
sur ta premiere page tu auras
un limit de 0, 59
sur la deuxieme
limit 60, 119
sur la nieme
limit 60(n-1), 60n
mais ca change un peu le code que je t ai fournis.
au niveau du count(*) et du limit surtout
Marsh Posté le 09-07-2003 à 16:53:09
Sébastien a écrit : ben non c tout simple (enfin presque) |
ok merci , j'essaierais ca plus tard (pis ca à l'aire quand même plus simple que comme j'allais commencé).
En faite là j'étais parti dans le formulaire pour insérer des images et il me manque juste un truc. J'aimerais récupèrer la taille de l'image dans mon fichier de traitement. C'est quelle commande qui se charge de ça?
Marsh Posté le 09-07-2003 à 16:55:44
filesize()
Mais si dans tes scripts tu t'en sers jamais dans les traitements mais seulement l'affichage de tes pages je te conseille de ne pas le stocker ca sera tjs de l'economie :-)
Marsh Posté le 09-07-2003 à 17:14:38
Merci, j'ai supprimé le champ de la table
rhoo, encore un petit problème avec une requète mysql...
Code :
|
j'imagine que c'est encore un prob de syntaxe.
l'erreure:
Erreur SQL !
INSERT INTO test VALUES('',2,test21.jpg,2003-09-07,test,0)
Unknown table 'test21' in field list
Marsh Posté le 09-07-2003 à 17:16:12
oui quand c pas des chiffres faut que les valeurs soient entre ' '
'test21.jpg'
Marsh Posté le 09-07-2003 à 20:33:32
Sébastien a écrit :
|
j'ai toujours du mal à comprendre cette partie..
déjà le "for($i...)" il nous fait quoi à ce pauvre petit $i
et y'a le "limit $i,..." que je comprend pas. la première variable indique l'image de départ et le second le nombre à afficher?
parce qu'en faite y'a un Bug , il affiche toutes les lignes...
[edit] ahh, et lors d'un test j'ai afficher le $i à la fin histoire de comprendre. Avec 7 image résultat 8 et avec un image de plus j'obtient 10
Marsh Posté le 09-07-2003 à 20:59:09
ton $i te permet de passer de ligne en ligne
en gros si tu lui dis qu'il y a 5 images par ligne
il ira de 5 en 5 et avec ton limit te selectionnera tes 5 images
exemple concret
35 images 5 images par ligne
tu arrives
for($i=0;$i<=35;$i+=5){
$sql="select * from test where rubrique='$rub' limit $i, +$impli";
= $sql="select * from test where rubrique='$rub' limit 0, 5";
il va donc t afficher les 5 premieres images
ensuite il va s'incrementer de 5 (i sera donc egal a 0+5=5)
$sql="select * from test where rubrique='$rub' limit 5, 5";
les 5 suivantes
ensuite i=10 et jusqu a que i soit >35 et donc s'arrete=
etc etc
limit a, b
a=occurence a partir de laquelle on cherche
b=nombre d'occurences qu'on retourne
Marsh Posté le 09-07-2003 à 21:03:23
Sébastien a écrit : ton $i te permet de passer de ligne en ligne |
ok merci, je crois que j'ai mieux compris là
T'aurais une idée pour mon problème de nombre de lignes retournées sans limite ?
Marsh Posté le 09-07-2003 à 07:30:12
Bonjour tout le monde
Je suis en train d'essayer de coder une gallerie mysql (en faite j'en ai déjà une fonctionnelle en php uniquement).
Vu comme c'est partit je pense que j'aurais encore pas mal besoin de votre aide
1er problème: Syntaxe d'une requête sql avec variable:
$sql = 'SELECT id,rubrique,nom_fichier,taille_ko,status FROM test WHERE id='$ut;
et voilà le code autour de ca:
echo '<table width="50%" border="1">';
while($li <= $nbrli)
{
$nbr = 1;
echo '<tr>';
while($nbr <= $impli)
{
while($rubrique <> $rub)
{
// on créer la requete SQL et on l'envoie
$sql = 'SELECT id,rubrique,nom_fichier,taille_ko,status FROM test WHERE id='$ut;
// on envoie la requete
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$ut = $ut + 1;
}
echo '<td>'.$row['id'].'</td>';
$nbr = $nbr + 1;
$ut = $ut +1;
}
echo '</tr>';
$li = $li + 1;
}
echo '</table>';
pour les variables:
$ut = sert de comparaison avec $id
$impli = images par ligne
$nbrli = nombre d'image par ligne
merci d'avance
Message édité par dd_005 le 18-07-2003 à 20:11:08
---------------
http://blog.numerisound.com