Ma boucle boucle une fois de trop! - PHP - Programmation
Marsh Posté le 23-09-2004 à 21:07:14
Ton code est bizar quand meme.
Ta method construct de ta classe clip elle fait quoi exactement ?
Yannick
Marsh Posté le 23-09-2004 à 21:18:23
L'idée, c'est qu'un objet movie, contient un plusieurs clips, donc un tableau d'objet clip.
Mon constructeur de clip initialise l'objet clip, soit:
un $id,
un $title,
un $length,
la fonction setClip() est a l'intérieur de la classe movie.
Marsh Posté le 23-09-2004 à 21:28:47
Tu as fais un echo $total ? Ça te donne combien ?
Marsh Posté le 23-09-2004 à 21:32:37
ReplyMarsh Posté le 23-09-2004 à 21:35:00
Le Farceur a écrit : evidemment, ca donne 6!!! Puisqu'il y a 6 clips! |
Marsh Posté le 23-09-2004 à 21:44:37
ce sont les code quand tu fait ton array
change de fonction y en a une autre
avec on array tu peux appeler ton champ par son nom et pas son numero d'ordre dans la requete et ca ca chie tout je pense
Marsh Posté le 23-09-2004 à 22:10:35
jolly a écrit : ce sont les code quand tu fait ton array |
J'ai rien compris
Marsh Posté le 23-09-2004 à 22:18:47
jolly a écrit : ce sont les code quand tu fait ton array |
http://fr.php.net/manual/fr/functi [...] -array.php
avec un mysql_fetch_array tu peux faire les 2, soit, le numéro du champs, soit le nom de ceux-ci...
Par contre le 2ème paramètre (MYSQL_ASSOC) n'est pas obligatoire, essai en ne le mettant pas pour voir ce que ça fait
Marsh Posté le 23-09-2004 à 20:46:45
Salut,
voila mon petit problème...
dans ma base de donnée j'ai la table clip qui contient les info suivantes:
id/movie_id/length/title
1/1/NULL/watcher of the skies
2/1/NULL/Time table
3/1/NULL/Get them out by fridaiy
4/1/NULL/can-utility and the coastliners
5/1/NULL/horizon's
6/1/NULL/supper's ready
Maintenant je veux mettre ces informations dans un objet movie.
Ma fonction setClip() {
$query = "select * from clip where movie_id = '$this->id' order by id";
$result = mysql_query( $query ) or die ( "Query failed" );
$total = mysql_num_rows ( $result );
while( $line = mysql_fetch_array ( $result, MYSQL_ASSOC ) ) {
$clip = new clip ( $line['id'], $line['movie_id'], $line['length'], $line['title'] );
array_push ( $this->clips, $clip );
echo "Clip ".$line['title']." inserted!";
}
}
Le probleme c'est que quand j'apelle la fonction setClip(),
il m'affiche 12 clips, soit 2 fois les clips dans la base de donnés.
Quelqu'un comprend et peut me donner un petit coup de main!
Merci