Page 1 sur 1
pb avec switch
Posté : 01 mars 2005, 16:41
par mlamla
slt a tous
je presente mon probleme.
je veux à partir du choix d'une rubrique, generer un document PDF.
j'ai mis cette partie du code et ça marche tres bien:
<div id="onglet"><a href="#" onclick="window.open('op/exp_pdf.php','Export PDF','height=600,width=800,toolbar=0')" class="ong">Export Pdf</a></div><br />
le probleme c'est que j'ai le meme Pdf pour toutes les rubriques.
donc....logiquement j'ai fait un truc avec le switch.
ça donne ça:
<?
$cls=$_GET['cls']; //definie comme hidden.elle contient le nom de mes rubriques
switch ($cls)
{ case "actu" : $cible = 'op/exp_actuPdf.php'; break;
case "une" : $cible = 'op/exp_unepdf.php'; break;
case "mdr" : $cible = 'op/exp_mdrPdf.php'; break;
case "thm" : $cible = 'op/exp_themPdf.php'; break;
case "rub" : $cible = 'op/exp_rubPdf.php'; break;
default : $cible = 'op/exp_Xpdf.php'; break;
}
echo $cls."==>".$cible; //pour tester
echo '<div id="onglet">';
echo '<a href="#" onclick="window.open($cible, \'Export PDF\', \'height=600,width=800,toolbar=0\');" class="ong">Export Pdf</a></div><br />';
?>
ya rien qui se passe apres ka je clik sur l'onglet :export PDf
merci de votre aide
Posté : 01 mars 2005, 17:01
par fab
le probleme ne vient pas du switch il a l'air tout a fait correct
Posté : 01 mars 2005, 17:02
par mlamla
Moi aussi je pense comme toi.
mais la partie :
echo '<a href="#" onclick="window.open($cible, \'Export PDF\', \'height=600,width=800,toolbar=0\');" class="ong">Export Pdf</a></div><br />';
na pa l'aire d'etre interprettée.
Posté : 01 mars 2005, 17:05
par fab
affiche la sourcedu rendu et vérifi par toi meme
Posté : 01 mars 2005, 17:06
par mlamla
g pa trop compri ce ke tu ve dire
Posté : 01 mars 2005, 17:07
par fab
execute ton script , fait afficher la source dans ton naviguateur et regarde si ce qu'il sort est bien ce que tu veux
Posté : 01 mars 2005, 17:08
par mlamla
Code : Tout sélectionner
<?
include("include/bd.php");
if(!$_GET[url]){
$_GET[url]="op/graphe.php";}
if(!$_GET[cls]){
$_GET[cls]="rub";}
if($_GET[Datedeb] && !$_GET[Datefin]){
$ladate=explode("/",$_GET[Datedeb]);
$day=date("d/M/Y",mktime(0,0,0,$ladate[1],$ladate[0],$ladate[2]));
$requete=" data like '$day%' ";
}
$inc=0;
if($_GET[Datedeb] && $_GET[Datefin]){
do{
$exp=explode("/",$_GET[Datedeb]);
$r=date("d/m/Y",mktime(0,0,0,$exp[1],$exp[0]+$inc,$exp[2]));
$d[$inc]=date("d/M/Y",mktime(0,0,0,$exp[1],$exp[0]+$inc,$exp[2]));
$inc++;
}while($r != $_GET[Datefin]);
$requete = "(";
foreach($d as $value){
$requete.="or data like '$value%' ";
}
$requete.= ")";
$requete=ereg_replace("\(or","(",$requete);
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="expires" content="0" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Statistiques</title>
<link href="stats.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="bandeau"><span class="titre">STATISTIQUES</span><br />
www. .fr
</div>
<div id="bandeau_date">
<form action="" method="get">
<input type="hidden" name="cls" value="<?=$_GET[cls]?>" />
Date début <input name="Datedeb" type="text" class="formdate">
Date fin <input name="Datefin" type="text" class="formdate"> (Format jj/mm/aaaa)
<input type="submit" value="valider" class="formdate"/>
</form>
</div>
<div id="titre"><a href="./?cls=rub" class="gras">Rubriques</a><a href="./?cls=actu" class="gras">Actualités</a><a href="./?cls=une" class="gras">A la une</a><a href="./?cls=mdr" class="gras">Moteur de Recherche</a><a href="./?cls=thm" class="gras">Thematique</a><a href="admin/" class="gras">???Admin???</a></div>
<div id="onglet"><a href="<?=$_SERVER[PHP_SELF]."?url=op/graphe.php&cls=$_GET[cls]"?>" class="ong">Graphe</a></div>
<div id="onglet"><a href="<?=$_SERVER[PHP_SELF]."?url=op/exp_xls.php&cls=$_GET[cls]"?>" class="ong">Export Excel</a></div>
<!--<div id="onglet"><a href="#" onclick="window.open('op/exp_pdf.php','Export PDF','height=600,width=800,toolbar=0')" class="ong">Export Pdf</a></div><br />-->
<?
switch ($_GET['cls'])
{ case "actu" : $cible = 'op/exp_actuPdf.php'; break;
case "une" : $cible = 'op/exp_unepdf.php'; break;
case "mdr" : $cible = 'op/exp_mdrPdf.php'; break;
case "thm" : $cible = 'op/exp_themPdf.php'; break;
case "rub" : $cible = 'op/exp_rubPdf.php'; break;
default : $cible = 'op/exp_Xpdf.php'; break;
}
echo $cls."==>".$cible;//pour tester
echo '<div id="onglet">';
echo '<a href="#" onclick="window.open($cible, \'Export PDF\', \'height=600,width=800,toolbar=0\');" class="ong">Export Pdf</a></div><br />';
?>
<div id="frame">
<?include($_GET[url])?>
</div>
</body>
</html>
voilà en gros ma page index.
Posté : 01 mars 2005, 17:09
par fab
c'est pas le code propre que je veux c'est ce que reçoit le naviguateur apres execution du PHP cad du HTML
Posté : 01 mars 2005, 17:12
par Invité
kan je laisse :
<!--<div id="onglet"><a href="#" onclick="window.open('op/exp_pdf.php','Export PDF','height=600,width=800,toolbar=0')" class="ong">Export Pdf</a></div><br />-->
j'ai le document pdf qui se genere.bien sur il est le meme pour toutes les rubriques.
et kan je met plutot ça:
<?
switch ($_GET['cls'])
{ case "actu" : $cible = 'op/exp_actuPdf.php'; break;
case "une" : $cible = 'op/exp_unepdf.php'; break;
case "mdr" : $cible = 'op/exp_mdrPdf.php'; break;
case "thm" : $cible = 'op/exp_themPdf.php'; break;
case "rub" : $cible = 'op/exp_rubPdf.php'; break;
default : $cible = 'op/exp_Xpdf.php'; break;
}
echo $cls."==>".$cible;//pour tester
echo '<div id="onglet">';
echo '<a href="#" onclick="window.open($cible, \'Export PDF\', \'height=600,width=800,toolbar=0\');" class="ong">Export Pdf</a></div><br />';
?>
je n'ai plus aucune reponse.c'est comme si l'onglet Export pdf n'été pas un lien.
Posté : 01 mars 2005, 23:42
par Flood
Hello,
Dans ton script PHP, l'url de destination de la popup générée au clic du lien n'est pas encadrée d'apostrophes, donc ça ne va pas fonctionner...
Au lieu de
Code : Tout sélectionner
echo '<a href="#" onclick="window.open($cible, \'Export PDF\', \'height=600,width=800,toolbar=0\');" class="ong">Export Pdf</a></div><br />'; , tu dois utiliser
Code : Tout sélectionner
echo '<a href="#" onclick="window.open(\'$cible\', \'Export PDF\', \'height=600,width=800,toolbar=0\');" class="ong">Export Pdf</a></div><br />';
Au passage, le break est inutile pour ton cas "default"...
/Flood
Posté : 01 mars 2005, 23:53
par albat
le probleme ne vient pas du switch il a l'air tout a fait correct
Merci, j'en suis l'auteur !

Posté : 02 mars 2005, 12:36
par mlamla
waw ...Merci les amis...
ça marche a merveillle mnt
encore une fois 10000 merci