cs_jaco13
Messages postés110Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention22 octobre 2007
-
22 janv. 2006 à 11:57
cs_jaco13
Messages postés110Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention22 octobre 2007
-
23 janv. 2006 à 18:12
Bonjour
J'aimerais afficher une popup avec un contenu différent selon la sélection de l'internaute dans le moteur de recherche. En cliquant sur la légende placée sous les différentes photos qui s'affichent dans mon site après sélection et demande d'affichage, une pop-up s'affiche avec des éléments dedans. (voir sur www.meuble-ancien.com ) . ( Ce site est mon site d'essai où je fais toutes mes manip. avant de les proposer aux clients. )
Ces éléments situés dans cette pop-up ont été programmés en particulier pour les "salons" que l'on trouve grâce au moteur de recherche le plus à gauche "Genre" + "afficher". ( car le client qui est intéressé vend principalement des salons ). Lorsque l'internaute sélectionnera l'option " Salon " grâce au moteur de recherche, la pop-up s'affichera telle qu'elle est actuellement sur le site.
Ce que j'aimerais: C'est que quand l'internaute sélectionnera un autre genre, per exemple " Armoire" ou " Buffet ", que ce soit toujours la même pop-up qui s'affiche mais avec des éléments différents de la 1ère.
Alors j'ais pensé programmer les 2 cas possible dans la pop-up:
1)° le cas réservé à la sélection "salon"
2°) le cas pour les autres genres de meuble sélectionnés .
Pour que cela fonctionne, il faut mettre un "if" "else" . C'est à dire " IF " l'internaute a choisit "salon" dans le sélecteur, la pop-up affiche la programmation prévue pour les "salons" et " ELSE ", la pop-up affiche la programmation pour les autres meubles.
Je ne sais pas du tout comment on fait çà? En plus, je crois qu'il faut faire passer les variables de la page où se passe la sélection à la page "pop-up". Je ne sais pas trop manipuler ce genre de chose.
Je crois que ça devrait ressembler à quelque chose comme çà:
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 22 janv. 2006 à 13:10
Salut,
si c'est pour afficher une popup je pense que tu dois utiliser le javascript. Tu auras plus de renseignements sur le forum javascript : http://www.javascriptfr.com
Sinon en PHP pour récupérer les valeurs d'un select par exemple :
Si tu laisses par défaut $_POST['mon_select'] vaudra 1 car c'est l'option "Test" qui est sélectionnée par défaut. Si tu sélectionnes "Test 2" $_POST['mon_select'] vaudra 2
cs_jaco13
Messages postés110Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention22 octobre 2007 22 janv. 2006 à 15:54
Merci Anthomicro pour ta réponse mais je ne suis pas très fort en prog. et j'aurai besoin de plus de détails pour m'en sortir. Je vais donc être un peu plus clair dans ma demande et vous expliquer un peu mieux:
Voici ci-après le code du sélecteur "Genre" de la page index.php de mon site de meubles qui permet à l'internaute de sélectionner le genre de meuble (armoire, buffet, salon, lit, ect...).
( Le code utilisé vient déjà d'un autre site qui traîtait d'une agence immobilière. C'est pour cela qu'il y a des variables en rapport avec "ville" et que le sélecteur s'appelle "SelectVille1", ect .... Je l'ai adapté à mon site de meubles et il fonctionne très bien.
Afin donc de faciliter les choses et étant donné que le code est plus conçu pour une agence immobilière que pour des meubles, imaginons que ce soit encore le site de l'agence immobilière et que dans le sélecteur, je n'ai pas des meubles comme actuellement mais des villes comme c'était à l'origine. ( Nancy, Paris, Marseille, Lyon, ect...)
Imaginons toujours que j'ai programmé 2 pop-up dans la même page "pop-up.php":
1°) Une pop-up générale pour toutes les villes quelque soit la sélection de l'internaute.
2°) Une autre pop-up avec plus de détails rien que pour la ville de Marseille, valable donc uniquement pour la ville de Marseille.
Comment puis-je récupérer l'option "Marseille " sélectionnée dans le sélecteur ci-dessous par l'internaute dans la page "index.php", faire passer l'option "Marseille" dans la page "pop-up.php", puis comment construire mon code sur "pop-up.php" pour que la pop-up générale puisse s'afficher pour les villes Nancy, Paris et Lyon et que la pop-up spécifique à Marseille s'affiche uniquement quand l'otion "Marseille" a été sélectionnée?
Voici le sélecteur concerné de ma page "index.php".
<? $resultat=mysql_query("SELECT * FROM ville ORDER BY nomville"); ?>
<tr>
<td align=center><select name="SelectVille1" class="selecteurnoms" id="SelectVille1">
<option value="all" <?php if(!isset($_POST['SelectVille1'])){echo " selected";}?>>Indifférent</option>
<? WHILE( $res=mysql_fetch_array($resultat,MYSQL_ASSOC)){
echo "<option";
if(isset($_POST['SelectVille1']) and $_POST['SelectVille1'] == $res['nomville']){echo " selected";}
echo ">".$res['nomville']."</option>";
}
?>
</select>
</td>
Voici le début du code de "pop-up.php" qui s'ouvre lorsqu'on clique sur la légende placée sous les photos apparaissant après avoir fait une sélection dans les moteurs de recherche et après avoir appuyé sur le bouton "afficher".
Il y a le début du code de cette page + l'up-load de la 1ère photo ( pour information et le repérage).
Quelqu'un peut-il m'aider?
<?
include "connexion.inc.php";
$Legende="";
$AdrsPhoto="";
//Pour récupérer la variable qui est passée par l'url:
$i=$_GET['id'];
//Je récupère les données de l'habitation sélectionnée
$resultat=mysql_query("SELECT * FROM maison WHERE id='$i'");
$res=mysql_fetch_array($resultat,MYSQL_ASSOC);
//Je récupère toutes les données de la ville de l'habitation sélectionnée
$resultat1=mysql_query("SELECT * FROM ville WHERE id='$res[idville]'");
$res1=mysql_fetch_array($resultat1,MYSQL_ASSOC);
?>
<html>
<head>
<title>Détail</title>
<link href="immo.css" rel="stylesheet" type="text/css">
</head>
<table height="312" bgcolor=white align="center">
<tr height="312" valign=top>
<td>
<table width="760" height="682" border="1">
<tr bgcolor="#DCE9E9">
<td height=200 colspan=3 align=center>
<? //S'il y a une photo à mettre, je la mets sinon je dis "photo absente"
if($res["photo"]!=""){
//Reconstitution de l'adresse où se trouve la photo
$AdrsPhoto= "./photo_meubles/".$res["photo"];
//Aquisition de la taille de la photo
$Taille=GetImageSize($AdrsPhoto);
//Calcul du ratio de X
$RatioX=$Taille[0]/500;
//Calcul du ratio de Y
$RatioY=$Taille[1]/200;
//Choix du ratio le plus grand
$Ratio = $RatioX > $RatioY ? $RatioX : $RatioY;
//Calcul de la largeur de la vignette
$LargeurVignette=ceil($Taille[0]/$Ratio);
//Calcul de la hauteur de la vignette
$HauteurVignette=ceil($Taille[1]/$Ratio);
$AdrsPhoto="./photo_meubles/".$res['photo'];
echo "";
}
else{
echo "photo absente";
}
?>
</td>
cs_jaco13
Messages postés110Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention22 octobre 2007 23 janv. 2006 à 18:12
Voici la page entière avec:
en noir = la programmation php pour déclarer les variables (avant le formulaire)
en Bleu = les balises du formulaire
en rouge = Tout ce qu'il y a dans le formulaire
en vert = le sélecteur concerné
<?
session_start ();
//Les includes
include "connexion.inc.php";
//Les variables attachées au formulaire
$VAfficher1=false;
$VAfficher2=false;
$VPageSuiv=false;
$VPagePrec=false;
//Les champs
$VVille1=""; //La ville moteur1
$VVille2=""; //La ville moteur2
$VType1=""; //Le type moteur1
$VType2=""; //Le type moteur2
$VAchloc1=""; //Achat/Location moteur1
$VAchloc2=""; //Achat/Location moteur2
$VPrix=""; //Le budget à prévoir moteur1
$VPieces=""; //Le nombre de pièces moteur2
$VNumPage=1; //Le numéro de la page en cours
//Les variables du programme
$Compteur=0; //Un compteur
$Index=0; //Un index qui pointera le premier élément à afficher
$VPrixMin=0; //Le prix bas de la fourchette
$VPrixMax=0; //Le prix haut de la fourchette
$VIdVille=0; //L'identifiant de la Ville dans la table "maison"
$NombrePages=0; //Nombre total de pages en fonction de la requete en cours
$NombreMaisons=0; //Nombre total d'habitations en fonction de la requete en cours
$Legende=""; //Legende des vignettes
//La requete de base. Toutes les habitations triées par prix.
if (isset ($_SESSION["requete"])){
$Requete=$_SESSION["requete"];
}
else {
$Requete= "SELECT * FROM maison ORDER BY prix";
}
//Aquisition des variables d'environnement.
$variables = $HTTP_POST_VARS;
//Aquisition des boutons et des champs du formulaire
while(list($nom,$valeur)=each($variables)){
switch($nom){
//Les boutons
case "Afficher1" :$VAfficher1=true; break; //Sélection du moteur1
case "Afficher2" :$VAfficher2=true; break; //Sélection du moteur2
case "PageSuiv" :$VPageSuiv=true; break; //Bouton page suivante
case "PagePrec" :$VPagePrec=true; break; //Bouton page précédente
//Les champs
case "SelectVille1" :$VVille1=$valeur; break; //La ville moteur1
case "SelectType1" :$VType1=$valeur; break; //Le type moteur1
case "SelectAchloc1" :$VAchloc1=$valeur; break; //Achat/Location moteur1
case "SelectPrix" :$VPrix=$valeur; break; //Budget à prévoir moteur1
case "SelectVille2" :$VVille2=$valeur; break; //La ville moteur2
case "SelectType2" :$VType2=$valeur; break; //Le type moteur2
case "SelectAchloc2" :$VAchloc2=$valeur; break; //Achat/Location moteur2
case "SelectPieces" :$VPieces=$valeur; break; //Nombre de pièces moteur2
case "NumeroPage" :$VNumPage=$valeur; break; //Champs caché pour passer le n° de la page appelante
default : break; //anti-bugs
}
}
if($VAfficher1) {$VNumPage=1;}
if($VAfficher2) {$VNumPage=1;}
if($VPageSuiv) {$VNumPage++;}
if($VPagePrec) {$VNumPage--;}
//Traitement des boutons "Afficher"
//Bouton "Afficher1"
if($VAfficher1){
//Récupération de l'ID de la ville
$resultat=mysql_query("SELECT * FROM ville WHERE nomville='$VVille1'");
$res=mysql_fetch_array($resultat,MYSQL_ASSOC);
$VIdVille=$res['id'];
//Constitution de la fourchette des budgets à prévoir
switch($VPrix){
case "1" :$VPrixMin=1; $VPrixMax=300; break;
case "2" :$VPrixMin=301; $VPrixMax=500; break;
case "3" :$VPrixMin=501; $VPrixMax=1000; break;
case "4" :$VPrixMin=1001; $VPrixMax=3000; break;
case "5" :$VPrixMin=3001; $VPrixMax=6000; break;
case "6" :$VPrixMin=6001; $VPrixMax=10000; break;
case "7" :$VPrixMin=10001; $VPrixMax=60000; break;
default : break;
}
//Constitution de la requete
//$Requete= "SELECT * FROM maison WHERE idville='$VIdVille' && type='$VType1' && achloc='$VAchloc1' && prix BETWEEN '$VPrixMin' AND '$VPrixMax'";
//Constitution de la requete
//ajout des conditions globales (indifférence)
/*modifié le 27 09 2005 par Logapus ID - réalisation de site pour pme*/
//**********************************************************************code modifié if($VVille1 'all'){$sqlIdVille1 "idville != ''";}else {$sqlIdVille1 = "idville='".$VIdVille."'";} // si pas de ville (Genre) définie on sélectionne tous ce qui n'est pas vide if($VType1 'all'){$sqltype1 "type != ''";}else {$sqltype1 = "type='".$VType1."'";}// si pas de type (époque) défini on sélectionne tous ce qui n'est pas vide if($VAchloc1 'all'){$sqlachloc1 "achloc != ''";}else {$sqlachloc1 = "achloc='".$VAchloc1."'";}// si pas de achat/location (matière) définie on sélectionne tous ce qui n'est pas vide if($VPrix 'all'){$sqlprix "prix != ''";}else {$sqlprix = "prix BETWEEN '$VPrixMin' AND '$VPrixMax'";}// si pas de (Budget) défini on sélectionne tous ce qui n'est pas vide
//**********************************************************************fin
//fin des conditions globales
$Requete= "SELECT * FROM maison WHERE ".$sqlIdVille1." && ".$sqltype1." && ".$sqlachloc1." && ".$sqlprix."";
// fin du secteur modifié
}
//Bouton "Afficher2"
if($VAfficher2){
//Récupération de l'ID de la ville
$resultat=mysql_query("SELECT * FROM ville WHERE nomville='$VVille2'");
$res=mysql_fetch_array($resultat,MYSQL_ASSOC);
$VIdVille=$res['id'];
//Constitution de la requete
$Requete= "SELECT * FROM maison WHERE idville='$VIdVille' && type='$VType2'";
}
?>
<html>
<head>
<title>Aventis Immobilier - Nos offres sur votre région</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="immo.css" rel="stylesheet" type="text/css">
<script language="JavaScript" type="text/JavaScript">
function affich_popup(nom_de_la_page)
{
window.open (nom_de_la_page, 'Détail', config='height=570, width=830, toolbar=no, menubar=no, scrollbars=yes, resizable=yes, location=no, directories=no, status=no')
}
</script>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
</head>
<style>
a{text-decoration:none;
}
</style>