Passage html en echo d'un php

Résolu/Fermé
BlueSkyBalmung Messages postés 18 Date d'inscription mardi 22 avril 2014 Statut Membre Dernière intervention 28 juillet 2016 - Modifié par BlueSkyBalmung le 23/05/2014 à 15:45
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 23 mai 2014 à 16:35
Bonjour,

Quelqu'un pourrait m'aider à faire passer mon html dans un echo en php ? Je commence à perdre patience, depuis quelques temps je n'arrive qu'à echo la moitié, tout viens de mon php dans le html (j'enleve pourtant les balise php pour ne laisser que le GET), je serais infiniement reconnaissant à celui qui y arrivera
D'habitude je sais le faire pour de courtes chaines html , mais là l'entremelement de " et de ' ou de plusieurs fois le même...

<div id="mod_print_fiche">
<a href="javascript: void(0)"  onclick="window.open('traitement_print_pdf.php?fiche_id=<? echo $_GET['fiche_id'];?>', 
 'Impression', 
 'width=800, height=600'); 
  return false;" style="float: right;"> <img src="./modules/mod_print_fiche/images/icone-print.jpg"></a>
</div>

Merci d'avance
Note : le code est juste, mais j'ai voulu rajouter une condition pour ajouter mon bouton d'impression

A voir également:

4 réponses

88av Messages postés 263 Date d'inscription dimanche 3 mars 2013 Statut Membre Dernière intervention 17 avril 2015 7
23 mai 2014 à 15:41
Quand tu exécute le code, ça te renvoie quoi en html ?
0
BlueSkyBalmung Messages postés 18 Date d'inscription mardi 22 avril 2014 Statut Membre Dernière intervention 28 juillet 2016
Modifié par BlueSkyBalmung le 23/05/2014 à 15:45
Quand j'essaie de le mettre en echo c'est à dire :
echo '<div id="mod_print_fiche"> 
<a href="javascript: void(0)" onclick="window.open('.'traitement_print_pdf.php?fiche_id='.$_GET['fiche_id'].', 
"Impression", 
"width=800, height=600"); 
return false;" style="float: right;"> <img src="./modules/mod_print_fiche/images/icone-print.jpg"></a> 
</div>';


j'obtiens ceci :
<a style="float: right;" false;"="" return="" height="600");" "width="800," impression",="" onclick="window.open(traitement_print_pdf.php?fiche_id=2.765, " href="javascript: void(0)">

    <img src="/./modules/mod_print_fiche/images/icone-print.jpg"></img>
0
88av Messages postés 263 Date d'inscription dimanche 3 mars 2013 Statut Membre Dernière intervention 17 avril 2015 7
Modifié par 88av le 23/05/2014 à 15:49
Essaye ça :

echo '<div id="mod_print_fiche"> 
<a href="javascript: void(0)" onclick="window.open(\'.\'traitement_print_pdf.php?fiche_id='.$_GET['fiche_id'].', 
"Impression", 
"width=800, height=600"); 
return false;" style="float: right;"> <img src="./modules/mod_print_fiche/images/icone-print.jpg"></a> 
</div>';


J'ai changé le
'.'
en
\'.\'
0
BlueSkyBalmung Messages postés 18 Date d'inscription mardi 22 avril 2014 Statut Membre Dernière intervention 28 juillet 2016
Modifié par BlueSkyBalmung le 23/05/2014 à 15:56
J'obtiens ceci

<a style="float: right;" false;"="" return="" height="600");" "width="800," impression",="" onclick="window.open('/.'traitement_print_pdf.php?fiche_id=2.765, " href="javascript: void(0)">

    <img src="/./modules/mod_print_fiche/images/icone-print.jpg"></img>


ça ne marche pas :/ pour le moment le bouton s'affiche je precise, juste qu'il ne fait absolument rien
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 525
Modifié par Pitet le 23/05/2014 à 16:29
Salut,

<?php
$html = '
<div id="mod_print_fiche">
<a href="javascript: void(0)"  onclick="window.open(\'traitement_print_pdf.php?fiche_id=' . intval($_GET['fiche_id']) . '\', \'Impression\', \'width=800, height=600\'); return false;" style="float: right;">
 <img src="./modules/mod_print_fiche/images/icone-print.jpg"></a>
</div>
';

echo $html;
?>

Si tu englobe ton html dans une chaine php délimitée par des quotes simple, il faut uniquement échapper les quotes simples à l'intérieur de ta chaine avec \.

Personnellement, je trouve ta version en html beaucoup plus lisible que vouloir l'englober dans une chaine php.
0
Utilisateur anonyme
23 mai 2014 à 16:30
Personnellement, je trouve ta version en html beaucoup plus lisible que vouloir l'englober dans une chaine php.


complètement d'accord, ils se prennent la tete depuis tout à l'heure alors qu'il manque juste le bout de la balise <?php -_-'
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 525
23 mai 2014 à 16:35
Les balises courtes (<? ?>) peuvent fonctionner si l'option short_open_tag est activé dans la config php : https://www.php.net/manual/fr/ini.core.php#ini.short-open-tag
Puisque cette config n'est pas activée sur tous les serveurs web, on conseil d'utiliser toujours les balises complètes (<?php ?>) pour assurer la portabilité du code.

Depuis php 5.4, la balise <?= (qui équivaut à <?php echo) est désormais toujours activée ;)
0
Utilisateur anonyme
23 mai 2014 à 15:18
salut


<div id="mod_print_fiche"> 
<a href="javascript: void(0)" onclick="window.open('traitement_print_pdf.php?fiche_id=<?php echo $_GET['fiche_id'];?>', 
'Impression', 
'width=800, height=600'); 
return false;" style="float: right;"> <img src="./modules/mod_print_fiche/images/icone-print.jpg"></a> 
</div> 



devrait aller

confirme moi stp

naga
-2
BlueSkyBalmung Messages postés 18 Date d'inscription mardi 22 avril 2014 Statut Membre Dernière intervention 28 juillet 2016
Modifié par BlueSkyBalmung le 23/05/2014 à 15:40
C'est moi ou vous m'avez exactement donné la même chaîne que je vous ai fournie ?
je demande de le mettre dans un echo qui plus est, donc entre apostrophe :/
0
j'ai simplement rajouté l'info 'php' (à moins que ma version php date un peu, mais <? me provoque des soucis alors que <?php non)

concernant les quotes en elles même, celles contenu entre les balises <?php ?> ne sont interprétée avec celles du html ou javascript => le php étant interprété côté serveur.


il faut que tu montre comment ton get est implémenté, la synthaxe est correcte (pour s'en rendre compte il suffit de remplacer la valeur renvoyé du get pas une valeur en dur ...)
0
bon aller, vu que je me fais mal noter par des personnes qui ne testent pas :



<?php ?><div id="mod_print_fiche">
<a href="javascript: void(0)" onclick="window.open('traitement_print_pdf.php?fiche_id=<?php echo '1';?>',
'Impression',
'width=800, height=600');
return false;" style="float: right;"> <img src="./modules/mod_print_fiche/images/icone-print.jpg"></a>
</div>




fonctionne trèèèès bien, avec la bonne redirection ouverte dans une popup.

mais bon, c'est sur que quand on veut echapper des caractère de javascript pour l'implémenter en php sans aucunes raisons (à si, compliqué le travail de celui qui reprendra l'appli et duposteur par la meme occasion)
0