Galerie photo php mysql
Résolu/Fermé
A voir également:
- Galerie photo php mysql
- Galerie photo en ligne gratuite - Guide
- Photo aérienne de ma maison - Guide
- Traduction photo gratuit - Guide
- Photo filtre 7 gratuit - Télécharger - Retouche d'image
- Photo de profil - Guide
12 réponses
J'ai essayé autrement
<?PHP
// infos de connexion à la base de données
include("../inc/secret.php");
// Connexion à la base de données
// Sélection de la base $bdd
mysql_selectdb('test');
// Ecriture requête SQL
$req_photo = "SELECT * FROM 'galerie_photo' WHERE '(PHOTO_ID='$PHOTO_ID') and (PHOTO='$PHOTO')" ;
$req_nombre = "SELECT * FROM photos WHERE (PHOTO_ID='$PHOTO_ID')" ;
// Exécute la requête
$id_result_photo = mysql_query ($req_photo,$id_connex) ;
$id_result_nombre = mysql_query ($req_nombre,$id_connex) ;
// Récupère le résultat de la requête dans le tableau $photo
$photo = mysql_fetch_array($id_result_photo,MYSQL_ASSOC) ;
$nbligne = mysql_num_rows ($id_result_nombre);
echo "<html>";
echo "<head>";
echo "<title>".$photo["PHOTO_NOM"]."</title>";
echo "</head>";
echo "<table width=\"100%\">";
echo "<tr>";
if ($photo["PHOTO"]!=1)
{
$PHOTOm=$PHOTO-1;
echo "<td align=\"left\"><a href=\"affiche.php?PHOTO_ID=".$PHOTO_ID."& PHOTO=".$PHOTOm."\" target=\"_self\"><b><font color=\"#999999\" face=\"Arial, Helvetica, sans-serif\"><<</font></b></td>";
}
if ($photo["PHOTO"]!= $nbligne)
{
$PHOTOp=$PHOTO+1;
echo "<td align=\"right\"><a href=\"affiche.php?PHOTO_ID=".$PHOTO_ID."& PHOTO=".$PHOTOp."\" target\"_self\"><b><font color=\"#999999\" face=\"Arial, Helvetica, sans-serif\">>></font></b></td>";
}
echo "</tr>";
echo "</table>";
echo "</body>";
echo "</html>";
?>
Mais cela ne fonctionne pas non plus et cela m'affiche :
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\Program Files\EasyPHP-5.3.8.1\www\galerie_photo\affiche.php on line 21
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files\EasyPHP-5.3.8.1\www\galerie_photo\affiche.php on line 22
<?PHP
// infos de connexion à la base de données
include("../inc/secret.php");
// Connexion à la base de données
// Sélection de la base $bdd
mysql_selectdb('test');
// Ecriture requête SQL
$req_photo = "SELECT * FROM 'galerie_photo' WHERE '(PHOTO_ID='$PHOTO_ID') and (PHOTO='$PHOTO')" ;
$req_nombre = "SELECT * FROM photos WHERE (PHOTO_ID='$PHOTO_ID')" ;
// Exécute la requête
$id_result_photo = mysql_query ($req_photo,$id_connex) ;
$id_result_nombre = mysql_query ($req_nombre,$id_connex) ;
// Récupère le résultat de la requête dans le tableau $photo
$photo = mysql_fetch_array($id_result_photo,MYSQL_ASSOC) ;
$nbligne = mysql_num_rows ($id_result_nombre);
echo "<html>";
echo "<head>";
echo "<title>".$photo["PHOTO_NOM"]."</title>";
echo "</head>";
echo "<table width=\"100%\">";
echo "<tr>";
if ($photo["PHOTO"]!=1)
{
$PHOTOm=$PHOTO-1;
echo "<td align=\"left\"><a href=\"affiche.php?PHOTO_ID=".$PHOTO_ID."& PHOTO=".$PHOTOm."\" target=\"_self\"><b><font color=\"#999999\" face=\"Arial, Helvetica, sans-serif\"><<</font></b></td>";
}
if ($photo["PHOTO"]!= $nbligne)
{
$PHOTOp=$PHOTO+1;
echo "<td align=\"right\"><a href=\"affiche.php?PHOTO_ID=".$PHOTO_ID."& PHOTO=".$PHOTOp."\" target\"_self\"><b><font color=\"#999999\" face=\"Arial, Helvetica, sans-serif\">>></font></b></td>";
}
echo "</tr>";
echo "</table>";
echo "</body>";
echo "</html>";
?>
Mais cela ne fonctionne pas non plus et cela m'affiche :
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\Program Files\EasyPHP-5.3.8.1\www\galerie_photo\affiche.php on line 21
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Program Files\EasyPHP-5.3.8.1\www\galerie_photo\affiche.php on line 22
Pour préciser ma question, est ce que cela vient de mon script, ou bien de la façon dont j'ai mis les liens dans php my admin ? Ou les deux..
Merci
Merci
Personne n'a une petite idée pour m'aider ?? svp
jean3xw
Messages postés
21
Date d'inscription
vendredi 14 octobre 2011
Statut
Membre
Dernière intervention
29 mai 2014
1
Modifié par jean3xw le 4/02/2012 à 11:07
Modifié par jean3xw le 4/02/2012 à 11:07
Essayez avec des slash(/) et non des anti slash(\) pour vos adresses.
S'il y en a deux différents c'est qu'ils n'ont pas la même utilité.
Une adresse c'est avec des slash(/) :
www.commentcamarche.net/forum
S'il y en a deux différents c'est qu'ils n'ont pas la même utilité.
Une adresse c'est avec des slash(/) :
www.commentcamarche.net/forum
Merci Jeanx3xw, mais cela ne fonctionne toujours pas
J'ai plusieurs messages d'erreurs,
Notice: Undefined index: PHOTO_ID in C:\wamp\www\test\affiche.php on line 12
Notice: Undefined variable: id_connex in C:\wamp\www\test\affiche.php on line 16
Warning: mysql_query() expects parameter 2 to be resource, null given in C:\wamp\www\test\affiche.php on line 16
Warning: mysql_fetch_array() expects parameter 1 to be resource, null given in C:\wamp\www\test\affiche.php on line 20
Et voici mon code encore modifié :
<?php
// infos de connexion à la base de données
// Sélection de la base $bdd
mysql_selectdb('test');
// Ecriture requête SQL
$req_photo = "SELECT * FROM 'galerie_photo' WHERE 'PHOTO_ID'='".$_POST['PHOTO_ID']."' AND 'PHOTO'='".$_POST['PHOTO']."'" ;
/*$req_nombre = "SELECT * FROM 'galerie_photo' WHERE 'PHOTO_ID'= '".$_POST['PHOTO_ID']."'" ; */
// Exécute la requête
$id_result_photo = mysql_query ($req_photo,$id_connex)/*or die('Erreur SQL !'.$req.'<br>'.mysql_error())*/;
/*$id_result_nombre = mysql_query ($req_nombre,$id_connex); */
// Récupère le résultat de la requête dans le tableau $photo
$photo = mysql_fetch_array($id_result_photo,MYSQL_ASSOC) ;
/*$nbligne = mysql_num_rows ($id_result_nombre); */
echo "<html>";
echo "<head>";
echo "<title>".$photo["PHOTO_NOM"]."</title>";
echo "</head>";
echo "<table width='100%'>";
echo "<tr>";
if ($photo["PHOTO"]!=1)
{
$PHOTOmoins=$_POST['PHOTO']--;
echo "<td align='left'><a href='affiche.php?PHOTO_ID=".$PHOTOmoins."&PHOTO=".$_POST['PHOTO_ID']."' target='_self'><b><font color='#999999' face='Arial, Helvetica, sans-serif'><<</font></b></td>";
}
if ($photo["PHOTO"]!=8 )
{
$PHOTOplus=$_POST['PHOTO']++;
echo "<td align='right'><a href='affiche.php?PHOTO_ID=".$PHOTOplus."&PHOTO=".$_POST['PHOTO_ID']."' target='_self'><b><font color='#999999' face='Arial, Helvetica, sans-serif'>>></font></b></td>";
}
echo "</tr>";
echo "</table>";
echo "</body>";
echo "</html>";
?>
Merci de votre aide
J'ai plusieurs messages d'erreurs,
Notice: Undefined index: PHOTO_ID in C:\wamp\www\test\affiche.php on line 12
Notice: Undefined variable: id_connex in C:\wamp\www\test\affiche.php on line 16
Warning: mysql_query() expects parameter 2 to be resource, null given in C:\wamp\www\test\affiche.php on line 16
Warning: mysql_fetch_array() expects parameter 1 to be resource, null given in C:\wamp\www\test\affiche.php on line 20
Et voici mon code encore modifié :
<?php
// infos de connexion à la base de données
// Sélection de la base $bdd
mysql_selectdb('test');
// Ecriture requête SQL
$req_photo = "SELECT * FROM 'galerie_photo' WHERE 'PHOTO_ID'='".$_POST['PHOTO_ID']."' AND 'PHOTO'='".$_POST['PHOTO']."'" ;
/*$req_nombre = "SELECT * FROM 'galerie_photo' WHERE 'PHOTO_ID'= '".$_POST['PHOTO_ID']."'" ; */
// Exécute la requête
$id_result_photo = mysql_query ($req_photo,$id_connex)/*or die('Erreur SQL !'.$req.'<br>'.mysql_error())*/;
/*$id_result_nombre = mysql_query ($req_nombre,$id_connex); */
// Récupère le résultat de la requête dans le tableau $photo
$photo = mysql_fetch_array($id_result_photo,MYSQL_ASSOC) ;
/*$nbligne = mysql_num_rows ($id_result_nombre); */
echo "<html>";
echo "<head>";
echo "<title>".$photo["PHOTO_NOM"]."</title>";
echo "</head>";
echo "<table width='100%'>";
echo "<tr>";
if ($photo["PHOTO"]!=1)
{
$PHOTOmoins=$_POST['PHOTO']--;
echo "<td align='left'><a href='affiche.php?PHOTO_ID=".$PHOTOmoins."&PHOTO=".$_POST['PHOTO_ID']."' target='_self'><b><font color='#999999' face='Arial, Helvetica, sans-serif'><<</font></b></td>";
}
if ($photo["PHOTO"]!=8 )
{
$PHOTOplus=$_POST['PHOTO']++;
echo "<td align='right'><a href='affiche.php?PHOTO_ID=".$PHOTOplus."&PHOTO=".$_POST['PHOTO_ID']."' target='_self'><b><font color='#999999' face='Arial, Helvetica, sans-serif'>>></font></b></td>";
}
echo "</tr>";
echo "</table>";
echo "</body>";
echo "</html>";
?>
Merci de votre aide
ddtddt
Messages postés
216
Date d'inscription
mardi 1 novembre 2011
Statut
Membre
Dernière intervention
8 juin 2013
5
5 févr. 2012 à 08:07
5 févr. 2012 à 08:07
as tu essayer de faire un echo $_POST['PHOTO'];
pour vérifier qu'il y a bien une réponse ?
pour vérifier qu'il y a bien une réponse ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Oui j'ai essayé mais il n'y a rien.
Comme mon script est dans le même dossier que mes photos, j'ai essayé de ne mettre que photox.jpg dans ma bdd, mais cela ne change rien.
Comme mon script est dans le même dossier que mes photos, j'ai essayé de ne mettre que photox.jpg dans ma bdd, mais cela ne change rien.
Utilisateur anonyme
5 févr. 2012 à 18:04
5 févr. 2012 à 18:04
salut,
tables:
normalement la maniere dont tu decide d'organiser tes données dans la base ne cause pas de probleme. Chaque webmaster a sa façon de creer ces tables, ces champs. mais le probleme est de ne pas creer des champs inutiles juste pour pas remplir la BDD.
petiti conseil: tes photos ont des noms du genre photo1, photo2.... pas besoin du champ PHOTO_NOM il suffit juste d'avoir l'id de la photo (PHOTO_ID) et tu as le nom. Quant au champ "PHOTO", il ne sert à rien si tu sais dans quel repertoire elles se trouvent.
php:
alors là je m'inquiete pour ton avenir avec cette façon de programmer :)
//on inclut conexdb.php ayant les variables $addresse $utilisateur $motdepasse
include("conexdb.php");
// Connexion à la base de données
mysql_connect($addresse,$utilisateur,$motdepasse);
// Sélection de la base
mysql_select_db("test");
// Ecriture requête SQL
$req_photo = "SELECT * FROM galerie_photo WHERE PHOTO_ID ='$PHOTO_ID'";
$nombre_image="SELECT COUNT(PHOTO_ID) FROM galerie_photo";
// Exécute la requête
$id_result_photo = mysql_query ($req_photo);
$nb_photo=mysql_query ($nombre_image);
// Récupère le résultat de la requête dans le tableau $photo
$photo = mysql_fetch_assoc($id_result_photo);
$nb=mysql_fetch_assoc($nb_photo);
echo "<html>";
echo "<head>";
echo "<title>".$photo["PHOTO_NOM"]."</title>";
echo "</head>";
echo "<table width='100%'>";
echo "<tr>";
if ($photo["PHOTO"]!=1)
{
$PHOTO_IDm=$PHOTO_ID-1;
echo "<td align='left'><a href='affiche.php?PHOTO_ID=".$PHOTO_IDm."' target='_self'><b><font color='#999999' face='Arial, Helvetica, sans-serif'><<</font></b></td>";
}
//afficher la photo
echo "<td ><img src='http://".$photo["PHOTO"]."'></td>";
if($photo["PHOTO"]<=$nb)
{
$PHOTO_IDp=$PHOTO_ID+1;
echo "<td align='right'><a href='affiche.php?PHOTO_ID=".$PHOTO_IDp."' target='_self'><b><font color='#999999' face='Arial, Helvetica, sans-serif'>>></font></b></td>";
}
echo "</tr>";
echo "</table>";
echo "</body>";
echo "</html>";
bon c'est vrai que je ne sais pas vraiment ce que tu cherches à faire, j'ai rajouté du code pour afficher l'image en cours.
tables:
normalement la maniere dont tu decide d'organiser tes données dans la base ne cause pas de probleme. Chaque webmaster a sa façon de creer ces tables, ces champs. mais le probleme est de ne pas creer des champs inutiles juste pour pas remplir la BDD.
petiti conseil: tes photos ont des noms du genre photo1, photo2.... pas besoin du champ PHOTO_NOM il suffit juste d'avoir l'id de la photo (PHOTO_ID) et tu as le nom. Quant au champ "PHOTO", il ne sert à rien si tu sais dans quel repertoire elles se trouvent.
php:
alors là je m'inquiete pour ton avenir avec cette façon de programmer :)
//on inclut conexdb.php ayant les variables $addresse $utilisateur $motdepasse
include("conexdb.php");
// Connexion à la base de données
mysql_connect($addresse,$utilisateur,$motdepasse);
// Sélection de la base
mysql_select_db("test");
// Ecriture requête SQL
$req_photo = "SELECT * FROM galerie_photo WHERE PHOTO_ID ='$PHOTO_ID'";
$nombre_image="SELECT COUNT(PHOTO_ID) FROM galerie_photo";
// Exécute la requête
$id_result_photo = mysql_query ($req_photo);
$nb_photo=mysql_query ($nombre_image);
// Récupère le résultat de la requête dans le tableau $photo
$photo = mysql_fetch_assoc($id_result_photo);
$nb=mysql_fetch_assoc($nb_photo);
echo "<html>";
echo "<head>";
echo "<title>".$photo["PHOTO_NOM"]."</title>";
echo "</head>";
echo "<table width='100%'>";
echo "<tr>";
if ($photo["PHOTO"]!=1)
{
$PHOTO_IDm=$PHOTO_ID-1;
echo "<td align='left'><a href='affiche.php?PHOTO_ID=".$PHOTO_IDm."' target='_self'><b><font color='#999999' face='Arial, Helvetica, sans-serif'><<</font></b></td>";
}
//afficher la photo
echo "<td ><img src='http://".$photo["PHOTO"]."'></td>";
if($photo["PHOTO"]<=$nb)
{
$PHOTO_IDp=$PHOTO_ID+1;
echo "<td align='right'><a href='affiche.php?PHOTO_ID=".$PHOTO_IDp."' target='_self'><b><font color='#999999' face='Arial, Helvetica, sans-serif'>>></font></b></td>";
}
echo "</tr>";
echo "</table>";
echo "</body>";
echo "</html>";
bon c'est vrai que je ne sais pas vraiment ce que tu cherches à faire, j'ai rajouté du code pour afficher l'image en cours.
Merci de ta réponse, mais j'ignore pourquoi ton script ne fonctionne pas non plus.
Saurais tu comment simplifier ce script ? Si tu dis "alors là je m'inquiete pour ton avenir avec cette façon de programmer :)" c'est que je cherche peut être trop compliqué..
Saurais tu comment simplifier ce script ? Si tu dis "alors là je m'inquiete pour ton avenir avec cette façon de programmer :)" c'est que je cherche peut être trop compliqué..
la même erreur ? Mais c'est impossible si tu as rajouté le code précédent, c'est quasiment impossible.
ou peut etre l'incrémentation mais ça ne change rien :
$req_photo = "SELECT * FROM galerie_photo WHERE PHOTO_ID ='".$PHOTO_ID."'";
tu as peut être mal édité ton fichier refais un nouveau fichier php et tu colles le code en entier.
ou peut etre l'incrémentation mais ça ne change rien :
$req_photo = "SELECT * FROM galerie_photo WHERE PHOTO_ID ='".$PHOTO_ID."'";
tu as peut être mal édité ton fichier refais un nouveau fichier php et tu colles le code en entier.
Je cherche juste à faire une galerie photo très simple, avec un bouton suivant et précédent pour passer d'une image à l'autre.
vsf90
Messages postés
26
Date d'inscription
dimanche 15 janvier 2012
Statut
Membre
Dernière intervention
13 février 2012
2
5 févr. 2012 à 22:36
5 févr. 2012 à 22:36
En fait, je ne crois pas que tu auras besoin de php. Tu dois utiliser juste le javascript et utilisant la fonction getElementById tu passera d'une photo à une autre sans avoir à recharger chaque fois la page.
vsf90
Messages postés
26
Date d'inscription
dimanche 15 janvier 2012
Statut
Membre
Dernière intervention
13 février 2012
2
5 févr. 2012 à 22:46
5 févr. 2012 à 22:46
J'en suis sur que tu pourra l'apprendre rapidement, c'est un langage de programation comme php
vsf90
Messages postés
26
Date d'inscription
dimanche 15 janvier 2012
Statut
Membre
Dernière intervention
13 février 2012
2
5 févr. 2012 à 22:49
5 févr. 2012 à 22:49
essaye ce site. Il y a un cours détaillé :
https://openclassrooms.com/fr/courses/5543061-ecrivez-du-javascript-pour-le-web?archived-source=1916641
https://openclassrooms.com/fr/courses/5543061-ecrivez-du-javascript-pour-le-web?archived-source=1916641
vsf90
Messages postés
26
Date d'inscription
dimanche 15 janvier 2012
Statut
Membre
Dernière intervention
13 février 2012
2
5 févr. 2012 à 22:56
5 févr. 2012 à 22:56
de rien mon frére, si tu as besoin d'un conseil ou quoi d'autre vient me poser tes questions.
Utilisateur anonyme
Modifié par eone2 le 5/02/2012 à 22:59
Modifié par eone2 le 5/02/2012 à 22:59
De Rien :) juste un truc pour finir. vsf90 a raison, c'est plus simple en javascript et tellement facile à réaliser. Des bibliotheques jquery peuvent donner encore plus d'effets diaporama et obtenir un résultat comparable à un diaporama fait en flash.
Mais bon comme tout le monde, c'est toujours le php avant le javascript. Mais ce n'est pas un bonne habitude car passer d'un langage qui n'est pas orienté objet vers un langage orienté objet est très difficile.
Bonne soirée et bonne continuation et n'oublie pas de marquer le sujet comme resolu
Mais bon comme tout le monde, c'est toujours le php avant le javascript. Mais ce n'est pas un bonne habitude car passer d'un langage qui n'est pas orienté objet vers un langage orienté objet est très difficile.
Bonne soirée et bonne continuation et n'oublie pas de marquer le sujet comme resolu
vsf90
Messages postés
26
Date d'inscription
dimanche 15 janvier 2012
Statut
Membre
Dernière intervention
13 février 2012
2
5 févr. 2012 à 23:04
5 févr. 2012 à 23:04
Oui eone2 a raison, avec le jquery c'est beaucoup mieux, mais pour utiliser le jquery il te faudra des notions de bases du javascript. Ce que je te propose c'est d'apprendre d'abord le javscript et aprés tu peux approfondir tes connaissances en Jquery.