IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Probleme refresh ordre photos


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2012
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 135
    Points : 69
    Points
    69
    Par défaut Probleme refresh ordre photos
    Bonjour,

    j'ai un problème de refresh suite à un changement d'ordre de photos.
    J'ai des flèches qui permettent de changer l'ordre des photos.

    Voici la page qui permet d'afficher la photo et demander le changement de position.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    //ma fonction
    function AffichePhoto($nom,$lg,$ht){
    	if (!file_exists($nom)){ $nom="../p0/p0logo.jpg"; }
    	$taille = getimagesize("$nom");
    	if($taille['1']>$taille[0]){
    			$new_lg=$taille[0]*$ht/$taille[1];
    			$new_ht=$ht;
    			} else {
    					$new_lg=$lg;
    					$new_ht=$taille[1]*$lg/$taille[0];
    					}
    	echo "<img src='$nom' width='$new_lg' height='$new_ht' border='0'>";
    	}
     
     
      if (file_exists($rep_cours."/".$_SESSION['biennumero']."p".$k.".jpg")) {
    		echo "<a href=\"showphoto.php?nom=".$_SESSION['biennumero']."p".$k.".jpg\" target=\"_blank\">";
    		AffichePhoto($rep_cours."/".$_SESSION['biennumero']."p".$k.".jpg",165,115);
    		echo "</a>";
     
    		echo "<table><tr><td><a href='ph_bouge.php?bien=".$_SESSION['biennumero']."&photo=".$k."&sens=h&arc=".$sorti."'><img src='images/fleche_h.jpg' border='0'></a></td></tr><tr><td><a href='ph_bouge.php?bien=".$_SESSION['biennumero']."&photo=".$k."&sens=b&arc=".$sorti."'><img src='images/fleche_b.jpg' border='0'></a></td></tr></table>";

    Voici le code de la page de changement de position :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    session_start();
    if (!isset($_SESSION['nego'])) { die('<META HTTP-equiv="refresh" content=0;URL="index.php">'); 
    }
    include("functions.php");
    connect();
     
    function maj_photos($f_bien,$f_numero,$f_numero_cible,$f_arc){
    	if(file_exists("photos".$f_arc."/".$f_bien."p".$f_numero_cible.".jpg")){
    		unlink("photos".$f_arc."/".$f_bien."p".$f_numero_cible.".jpg");
    		}
    	rename("photos".$f_arc."/".$f_bien."p".$f_numero.".jpg", "photos".$f_arc."/".$f_bien."p".$f_numero_cible.".jpg");
    	send_sql("UPDATE journal SET photo='".$f_bien."p".$f_numero_cible.".jpg' WHERE photo='".$f_bien."p".$f_numero.".jpg'");
    	send_sql("UPDATE journal2 SET photo='".$f_bien."p".$f_numero_cible.".jpg' WHERE photo='".$f_bien."p".$f_numero.".jpg'");
    	send_sql("UPDATE journalloc SET photo='".$f_bien."p".$f_numero_cible.".jpg' WHERE photo='".$f_bien."p".$f_numero.".jpg'");
    	send_sql("UPDATE journalloc2 SET photo='".$f_bien."p".$f_numero_cible.".jpg' WHERE photo='".$f_bien."p".$f_numero.".jpg'");
    	send_sql("UPDATE photo_diap SET num_photo='".$f_numero_cible."' WHERE num_produit='".$f_bien."' AND num_photo='".$f_numero."'");
    	send_sql("UPDATE photo_net SET num_photo='".$f_numero_cible."' WHERE num_produit='".$f_bien."' AND num_photo='".$f_numero."'");
    	}
     
    $bien=$_GET['bien']; // numero du bien
    $photo=$_GET['photo']; // numéro photo concernée
    $sens=$_GET['sens']; // 
    $arc=$_GET['arc'];
    if($arc==1){ $rep_ajout="_arc"; }else{ $rep_ajout=""; }
    if($photo==1 && $sens=="h"){ die('<META HTTP-equiv="refresh" content=0;URL="photos.php">'); 
    }
    if($photo==12 && $sens=="b"){ die('<META HTTP-equiv="refresh" content=0;URL="photos.php">'); 
    }
    $mavar=999;
    if(file_exists("photos".$rep_ajout."/".$bien."p".$photo.".jpg")){
    	if($sens=='h'){
    		if(file_exists("photos".$rep_ajout."/".$bien."p".($photo-1).".jpg")){
    			maj_photos($bien,($photo-1),$mavar,$rep_ajout); // on renomme la photo d'avant avec un nom temporaire
    			maj_photos($bien,$photo,($photo-1),$rep_ajout); // on nomme la photo concernée du nom de l'actuelle
    			maj_photos($bien,$mavar,$photo,$rep_ajout); // on nomme la photo avant du nom de la photo concernée
    			}else{ //-1 existe pas
    				maj_photos($bien,$photo,($photo-1),$rep_ajout);
    				}
    		}else{ //sens=bas
    			if(file_exists("photos".$rep_ajout."/".$bien."p".($photo+1).".jpg")){
    				maj_photos($bien,($photo+1),$mavar,$rep_ajout);
    				maj_photos($bien,$photo,($photo+1),$rep_ajout);
    				maj_photos($bien,$mavar,$photo,$rep_ajout);				
    				}else{ //+1 existe pas
    					maj_photos($bien,$photo,($photo+1),$rep_ajout);
    					}
    			}
    	}
     
    	die('<META HTTP-equiv="refresh" content=0;URL="photos.php">');

    Comme vous pouvez le voir, je renomme la photo avec la nouvelle position, par exemple:

    photos/37943p1.jpg devient photos/37943p2.jpg
    et photos/37943p2.jpg devient photos/37943p1.jpg

    Le renommage des photos s'effectue bien et l'update en base de données aussi, mais quand il recharge la page, il recharge bien les données des photos à leur emplacement, mais pas l'image en elle-même.

    Je dois faire clic-droit actualiser pour avoir les photos aux bons emplacement.

    Connaissez-vous une astuce pour forcer le refresh de la photo?

    J'ai essayé des meta de cache, mais j'ai l'impression qu'il faudrait quelque chose au niveau du PHP ?

  2. #2
    Membre confirmé
    Avatar de Nowwis
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2009
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2009
    Messages : 406
    Points : 498
    Points
    498
    Par défaut
    Salut,

    Après le .jpg, dans le src de l'image, tu peux mettre un time :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <img src="ma_photo.jpg?<?php echo time() ?>" />
    A chaque chargement ça réactualise l'image :-)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme refresh fichier joint
    Par princenamor dans le forum Struts 1
    Réponses: 1
    Dernier message: 26/02/2007, 17h59
  2. probleme crenelage sur photos
    Par coelho dans le forum Flash
    Réponses: 2
    Dernier message: 01/12/2006, 11h47
  3. probleme d'ordre de mon script
    Par gtraxx dans le forum PHP & Base de données
    Réponses: 14
    Dernier message: 14/10/2006, 20h53
  4. [Configuration] probleme avec affichage photo
    Par arti2004 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 17/06/2006, 23h23
  5. Probleme Refresh
    Par lemagicien dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 21/11/2005, 11h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo