OVH Community, votre nouvel espace communautaire.

PHP-MySql, Pour un ID donné, obtenir enregistrement suivant


visualight
17/11/2006, 19h56
Passe tes variables en session

Exemple de galerie ...
Essaye de t'inspirer du code

Code:
if(!$_GET['paging']){
		$requete = "SELECT * FROM $CfgDbTable WHERE id=$id";
		$resultat = mysql_query ($requete,$db) or die('

Erreur de connexion
'); $r = mysql_fetch_array($resultat); $nom = $r["nom"]; $repertoire = $r["repertoire"]; $watermarkactif = $r["watermarkactif"]; $rep = '../../../'.$CfgDirEvents.'/'.$repertoire.'/'.$CfgDirPhotos.'/'; $dossier = opendir ($rep); while($f = readdir ($dossier)){ if (strtolower(substr($f, -3)) == "jpg" || strtolower(substr($f, -3)) == "gif" || strtolower(substr($f, -3)) == "png" || strtolower(substr($f, -3)) == "wbmp"){ $pictArray[] = $f; } } $_SESSION['pictArray'] = $pictArray; $_SESSION['repImage'] = $rep; $_SESSION['watermarkactif'] = $watermarkactif; closedir ($dossier); } mysql_close ($db); //Fonction Next - Prev = paging function paging($page, $keyId, $valueArray){ foreach($valueArray as $key => $value){ if($value == $keyId){ $thisKey = $key; $prevKey = $key - 1; $preValue = $valueArray[$prevKey]; $nextKey = $key + 1; $nextValue = $valueArray[$nextKey]; } } if($preValue){ echo"\"Photo"; }else{ echo""; } if($nextValue){ echo"\"Photo"; }else{ echo""; } } //impression du tableau pour controle //die(print_r($_SESSION['pictArray'])); //On passe le paramètre de page $page = "photoweb.php?action=voirphoto&paging=True&eventsid=" . $id . "&nom="; echo '"; // echo""; echo '

'; paging($page,$_GET['nom'],$_SESSION['pictArray']); echo '
Afficher les vignettesLancer le diaporama

'; if($_SESSION['watermarkactif'] == "y"){ echo'
'; }else { echo'
'; }} if($_GET['fct'] == "diapo"){ $id = $_GET['galleryid']; foreach($_SESSION['pictArray'] as $key => $value){ if($value == $_GET['photo']){ $nextKey = $key + 1; $nextValue = $_SESSION['pictArray'][$nextKey]; } if(empty($nextValue)){ $nextValue = $_SESSION['pictArray'][0]; }} if($_SESSION['watermarkactif'] == "y"){ // echo"

Afficher les vignettes Diaporama en cours ...
'; echo '
'; } else { echo '

'; }} Bonne chance ...
Si besoin d'un coup 2 main, je suis la

@+

Ps: mes respect pour le beau et noble métier que tu fais
Perso, je suis tailleur/sculpteur de pierre. J'aurai peut être besoin de toi.
Travailles tu parfois à l'étranger ??
Abogil
17/11/2006, 11h34
Tu devrais faire un tour sur le site http://www.phpdebutant.org/forum1.php.

Il y a là des spécialistes qui devraient pouvoir t'aider efficacement, plutôt qu'ici qui est plutôt porté sur les problèmes liés à l'hebergement.

peyiolt
17/11/2006, 11h29
Bonjour,

J'ai créé une galerie photo dans mon site afin de montrer aux clients potentiels des exemples d'objets qui peuvent être réparés. La liste d'objet est générée grâce à php/mysql. Chaque objet à une variable d'URL dont l'adresse de base est galerie_content.php5?ID=

J'ai également créé une page de gestion de contenu qui permettra au propriétaire du site d'ajouter, modifier ou supprimer des objets de la galerie.

La page galerie_content.php5?ID= contient un lien vers l'objet précédent et vers l'objet suivant du type:
Code PHP:
   /*Si ID correspond au dernier enregistrement de la table, 
   ne pas afficher le lien*/
   
if ($row_rs_objet['ID'] != $lastId[0])
   {
?>
echo $row_rs_nav['ID'] + 1?>"> - Objet suivant
  }
?>
Comme le dit si bien le script le lien va chercher l'objet ID + 1.

Mon problème est le suivant, comme chaque objet à un ID (clé primaire) dans la base de données qui s'autoincrémente, si je supprime l'objet ID=5, le lien "objet suivant" de la page galerie_content.php5?ID=4, va emmener le visiteur sur la page ID=5 (là où ne se trouve aucun objet) et non ID=6.

Tout en précisant que je débute en php, quelqu'un connaitrait il une solution à mon problème?

Un grand merci d'avance!