par
san1981 » 05 août 2008, 20:51
Bonjour,
Je suis débutant en php (1ere application), j'ai commencé une galerie photos qui s'affiche correctement. L'internaute peut choisir une rubrique et selon la rubrique choisie, des miniatures s'affichent. Au clic sur une miniature, l'image en grand s'affiche simplement avec <img src="..."/>.
Mon but final est de permettre l'ajout de commentaires sur ma grande photo, est-ce possible avec mon code actuel ou suis-je obligée d'insérer les grandes photos dans une page grandephoto.php? Si oui, comment faut-il s'y prendre?
Merci à tous pour votre aide
Voici le code de l'affichage des miniatures avec pop des grandes photos au clic:
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("site");
echo "<form action='BDDPhotos.php'
enctype='multipart/form-data'
method='post'
class='formpetit'>
Rubrique: ";
//pour afficher une liste déroulante reprenant les rubriques présentes dans ma table "rubrique"
echo '<select name="rubrique">';
$requete = mysql_query("SELECT * FROM Rubrique ORDER BY RubriqueName") or exit("erreur rubrique");
while($reponse = mysql_fetch_array($requete))
{
echo '<option value="'.$reponse['RubriqueID'].'">'.$reponse['RubriqueName'].'</option>';
}
echo "</select><br/>
<input type='submit' value='Voir les photos' id='submit'/>
</form>";
echo "<table border='0' width='100%'><tr>";
$RubriqueID = $_POST['rubrique'];
// Récupère la liste des images de la rubrique sélectionnée
$result = mysql_query ("SELECT * FROM Image WHERE RubriqueID='$RubriqueID' ORDER BY MiniName") or die (mysql_error());
$NbrImgParLigne = 4;
$NumImgLigne = 0;
while ($row = mysql_fetch_array($result))
if ($NumImgLigne>=$NbrImgParLigne)
{
echo "</tr><tr>";
$NumImgLigne = 0;
}
$NumImgLigne++;
echo "<td align='center'>";
// Récupère l'ID et le nom de l'image, en déduit le nom de la miniature
$ImageID = $row['ImageID'];
$ImageName = $row['ImageName'];
$MiniName = $row['MiniName'];
// Chemin absolu miniature et grande image
$ImagetteAbsolutePath = $MiniName;
$ImageAbsolutePath = $ImageName;
// Récupère les dimentions de l'imagette
$JPEGRes = ImageCreateFromJPEG($ImagetteAbsolutePath);
$xsrc = imagesx($JPEGRes);
$ysrc = imagesy($JPEGRes);
// Affiche la miniature
echo "<a href='$ImageAbsolutePath' target='blank'><img src='$ImagetteAbsolutePath'
width='xsrc' height='ysrc' border='0' alt=''></a>";
echo "</td>";
}
echo "</tr></table>";
?>
Bonjour,
Je suis débutant en php (1ere application), j'ai commencé une galerie photos qui s'affiche correctement. L'internaute peut choisir une rubrique et selon la rubrique choisie, des miniatures s'affichent. Au clic sur une miniature, l'image en grand s'affiche simplement avec <img src="..."/>.
Mon but final est de permettre l'ajout de commentaires sur ma grande photo, est-ce possible avec mon code actuel ou suis-je obligée d'insérer les grandes photos dans une page grandephoto.php? Si oui, comment faut-il s'y prendre?
Merci à tous pour votre aide :D
Voici le code de l'affichage des miniatures avec pop des grandes photos au clic:
[php]
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("site");
echo "<form action='BDDPhotos.php'
enctype='multipart/form-data'
method='post'
class='formpetit'>
Rubrique: ";
//pour afficher une liste déroulante reprenant les rubriques présentes dans ma table "rubrique"
echo '<select name="rubrique">';
$requete = mysql_query("SELECT * FROM Rubrique ORDER BY RubriqueName") or exit("erreur rubrique");
while($reponse = mysql_fetch_array($requete))
{
echo '<option value="'.$reponse['RubriqueID'].'">'.$reponse['RubriqueName'].'</option>';
}
echo "</select><br/>
<input type='submit' value='Voir les photos' id='submit'/>
</form>";
echo "<table border='0' width='100%'><tr>";
$RubriqueID = $_POST['rubrique'];
// Récupère la liste des images de la rubrique sélectionnée
$result = mysql_query ("SELECT * FROM Image WHERE RubriqueID='$RubriqueID' ORDER BY MiniName") or die (mysql_error());
$NbrImgParLigne = 4;
$NumImgLigne = 0;
while ($row = mysql_fetch_array($result))
if ($NumImgLigne>=$NbrImgParLigne)
{
echo "</tr><tr>";
$NumImgLigne = 0;
}
$NumImgLigne++;
echo "<td align='center'>";
// Récupère l'ID et le nom de l'image, en déduit le nom de la miniature
$ImageID = $row['ImageID'];
$ImageName = $row['ImageName'];
$MiniName = $row['MiniName'];
// Chemin absolu miniature et grande image
$ImagetteAbsolutePath = $MiniName;
$ImageAbsolutePath = $ImageName;
// Récupère les dimentions de l'imagette
$JPEGRes = ImageCreateFromJPEG($ImagetteAbsolutePath);
$xsrc = imagesx($JPEGRes);
$ysrc = imagesy($JPEGRes);
// Affiche la miniature
echo "<a href='$ImageAbsolutePath' target='blank'><img src='$ImagetteAbsolutePath'
width='xsrc' height='ysrc' border='0' alt=''></a>";
echo "</td>";
}
echo "</tr></table>";
?>
[/php]