Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1294 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Problème MYSQL et faire des pages

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème MYSQL et faire des pages

n°1877575
absot77
Posté le 24-04-2009 à 19:48:00  profilanswer
 

Bonjour, je dois faire un mini site pour un TP de cours qui permet d'ajouter et d'enlever des films d'une base de données MYSQL seulement les films sont caractérisés par un idfilm, un titre, une annee, une idGenre, un resume text et une photo..
 
Mon problème est pour l'idfilm parce que je ne sais pas trop comment faire pour à chaque fois que l'on ajoute un film, faire genre le total de nombre de film+1..
 
Je vous montre mon ficher .sql pour que vous compreniez un peu mieux..
 
 

Code :
  1. DROP TABLE IF EXISTS Film;
  2. CREATE TABLE Film (
  3. idfilm int(11) NOT NULL PRIMARY KEY auto_increment,
  4. titre varchar(50) NOT NULL default '',
  5. annee int(11) NOT NULL default '0',
  6. idGenre int(11) NOT NULL default '1' references Genre(id),
  7. resume text,
  8. photo varchar(50) NOT NULL default ''
  9. ) ;
  10. #
  11. # Dumping data for table `Film`
  12. #
  13. INSERT INTO Film VALUES (1,'Vertigo', 1958, 2, 'Scottie Ferguson, ancien inspecteur de police, est sujet au vertige depuis qu\'il a vu mourir son\r\n collègue. Elster, son ami, le charge de surveiller sa femme, Madeleine, ayant des tendances\r\n suicidaires. Amoureux de la jeune femme Scottie ne remarque pas le piège qui se trame autour\r\n de lui et dont il va être la victime... ','vertigo.gif');
  14. INSERT INTO Film VALUES (2,'Titanic', 1997, 6, 'Conduite par Brock Lovett, une expédition américaine fouillant l\'épave du Titanic remonte à la\r\n surface le croquis d\'une femme nue. Alertée par les médias la dame en question, Rose DeWitt\r\n Bukater, aujourd\'hui centenaire, rejoint les lieux du naufrage, d\'où elle entreprend de conter le\r\n récit de son fascinant, étrange et tragique voyage... ','titanic.jpg');
  15. INSERT INTO Film VALUES (3,'1492',1996,1,'Evocation de la vie de l\'homme qui decouvrit le continent americain','1492.jpg');


Message édité par absot77 le 25-04-2009 à 15:04:57
mood
Publicité
Posté le 24-04-2009 à 19:48:00  profilanswer
 

n°1877587
absot77
Posté le 24-04-2009 à 20:41:36  profilanswer
 

Sinon je peux mettre une variable en l'initialisant à 49 et à chaque fois qu'une requête est effectuée, faire la variable +1 sachant que j'ai déjà 48 films dans la base de données au départ?


Message édité par absot77 le 24-04-2009 à 20:42:18
n°1877603
SICKofitAL​L
misanthrope
Posté le 24-04-2009 à 21:58:43  profilanswer
 

j'ai pas bien compris ta question, mais si il s'agit de faire en sorte que à chaque INSERT ton idFilm soit automatiquement incrémenté, saches que tu n'as pas besoin de le spécifier dans la requete car il est défini à "autoincrement".
 
En clair pour insérer un film il suffit de :

Code :
  1. INSERT INTO Film VALUES ('1492', 1996, 1, 'Evocation de la vie de l\'homme qui decouvrit le continent americain', '1492.jpg');


---------------
We deserve everything that's coming...
n°1877717
absot77
Posté le 25-04-2009 à 14:34:23  profilanswer
 

Oui voilà que l'idfilm se fasse automatiquement ou par une méthode quelconque..
 
L'auto-incrémentation sert à faire des choses automatiquement?
 
Ok merci de ton aide :)

n°1877719
SICKofitAL​L
misanthrope
Posté le 25-04-2009 à 14:44:13  profilanswer
 

absot77 a écrit :

Oui voilà que l'idfilm se fasse automatiquement ou par une méthode quelconque..
 
L'auto-incrémentation sert à faire des choses automatiquement?
 
Ok merci de ton aide :)


d'où son nom ;)
tests et tu verras :)


Message édité par SICKofitALL le 25-04-2009 à 14:44:27

---------------
We deserve everything that's coming...
n°1877723
absot77
Posté le 25-04-2009 à 15:04:41  profilanswer
 

Ca ne peut être fait que pour des nombres je parie?
 
J'ai aussi une autre question, je voudrais faire en sorte d'afficher 5 films par page et mettre des liens sur d'autres pages comme sur le forum pour les topics, j'ai pensé à initialiser une variable à 1 et lui faire +1 à chaque fois qu'il y a un ajout de film mais une fois que la variable vaut 5, je ne sais pas quoi faire..  :??:

n°1877724
SICKofitAL​L
misanthrope
Posté le 25-04-2009 à 15:23:35  profilanswer
 

pour sortir que 5 elements d'une requete, tu rajoutes "LIMIT 5" à la fin de celle-ci, ou "LIMIT 10,5" pour sortir que 5 elements à partir du 10eme enregistrements.


---------------
We deserve everything that's coming...
n°1877919
absot77
Posté le 26-04-2009 à 15:28:36  profilanswer
 

Comme ça:

 
Code :
  1. $query = "SELECT titre,resume,photo FROM Film LIMIT 5";


?

 

Ca fait les pages tout seul ou il faut rajouter un truc?

Message cité 1 fois
Message édité par absot77 le 26-04-2009 à 15:33:24
n°1877923
SICKofitAL​L
misanthrope
Posté le 26-04-2009 à 15:48:23  profilanswer
 

absot77 a écrit :

Comme ça:  
 

Code :
  1. $query = "SELECT titre,resume,photo FROM Film LIMIT 5";


?
 
Ca fait les pages tout seul ou il faut rajouter un truc?


Evidement que non, ca te sort comme précisé plus haut les 5 premiers enregistrements de ta requete, à toi de gérer la "pagination".


---------------
We deserve everything that's coming...
n°1877982
absot77
Posté le 26-04-2009 à 19:26:14  profilanswer
 

Je viens de tester pour l'auto incrémentation et ça ne fonctionne pas..
 
Ca me mets ce message "Column count doesn't match value count at row 1" qui se traduit par "Le compte de colonne ne correspond pas au compte de valeur au rang 1"..
 
Soit j'ai mal codé, soit il faut trouver une astuce et mettre obligatoirement un idfilm..
 
Mon code:  
 

Code :
  1. INSERT INTO Film values('$titre',$annee,$genre,'$resume','$photo');


 

mood
Publicité
Posté le 26-04-2009 à 19:26:14  profilanswer
 

n°1878012
SICKofitAL​L
misanthrope
Posté le 26-04-2009 à 21:49:41  profilanswer
 

Ben suis les docs alors

Code :
  1. INSERT INTO Film SET col1 = '$titre', col2 = $annee, col3 = $genre; // etc...


---------------
We deserve everything that's coming...
n°1878120
infoman64
JE SUIS LA POUR TOI MON AMI
Posté le 27-04-2009 à 10:59:30  profilanswer
 

absot77 a écrit :

Je viens de tester pour l'auto incrémentation et ça ne fonctionne pas..
 
Ca me mets ce message "Column count doesn't match value count at row 1" qui se traduit par "Le compte de colonne ne correspond pas au compte de valeur au rang 1"..
 
Soit j'ai mal codé, soit il faut trouver une astuce et mettre obligatoirement un idfilm..
 
Mon code:  
 

Code :
  1. INSERT INTO Film values('$titre',$annee,$genre,'$resume','$photo');


 


 
normal qu'il te rejete, quand tu fait un insert into sans passer les noms des colonnes il faut que tu mette toutes les valeurs de chaque colonne dans ton insert, et la il manque une valeur celle de idfilm
apres je crois qu'en mettant le code ci dessous ca marche  

Code :
  1. //si ta base c'est 'idfilm','titre','annee','genre','resume','photo'
  2. INSERT INTO Film values('','$titre',$annee,$genre,'$resume','$photo');// il faut que tu est chaque valeur de chaque colonne , et dans le même ordre que dans ta base


pour remedier a cela,et être sur que ca marche
tu fait  

Code :
  1. INSERT INTO Film ('titre','annee','genre','resume','photo') values('$titre',$annee,$genre,'$resume','$photo');// tu choisis les colonnes où les valeurs seront enregistrés.
  2. //embetant c'est vrai quand tu as beaucoup de colonnes


 
ou sinon tu as le code de SICKofitALL aussi qui est bien


Message édité par infoman64 le 27-04-2009 à 11:00:24

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Problème MYSQL et faire des pages

 

Sujets relatifs
Problème de hauteur de cellule html;;problème validation W3C ne peux pas récuperer mon code
Problème avec mon script bbcodeProbleme de synthaxe en mysql/JSP
probleme de include en melangeant C et C++Problème pour supprimer article en PHP/MySQL
MFC & Threads problème de compréhensionProblème d'envoi de mail avec php
Plus de sujets relatifs à : Problème MYSQL et faire des pages


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR