Popup

cs_zizou94
Messages postés
83
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
29 avril 2005
- 28 avril 2005 à 16:11
malalam
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
- 27 oct. 2005 à 08:58
Bonjour a tous

J'ai un petit souci j'aimerai ouvrir une image dans une popup mais je doit avoir une erreur de syntaxe.voici mon code :


<HR>

<?php



define('HEADING_TITLE', 'Contacts');
define('NAVBAR_TITLE', 'Contacts');
define('TEXT_SUCCESS', 'Votre message a été bien envoyé.');
define('TEXT_CUSTOMER', 'Client');
define('TEXT_GUEST', 'Visiteur');
define('EMAIL_SUBJECT', 'Mail pour ' . STORE_NAME);
define('EMAIL_PREAMBLE_TEXT', 'Mail envoyé par %s IP ');
define('ENTRY_NAME', 'Votre nom :');
define('ENTRY_NAME_CHECK_ERROR', '&nbsp;<small>Votre nom doit contenir au moins 3 caractères.</small>');
define('ENTRY_EMAIL', 'Votre adresse E-Mail :');
define('ENTRY_SOCIETY', 'Votre société :');
define('ENTRY_PHONE_NUMBER', 'Numéro de téléphone :');
define('ENTRY_PHONE_FAX', 'Numéro de fax :');
define('ENTRY_ENQUIRY', 'Votre message :');
define('ENTRY_ENQUIRY_CHECK_ERROR', '&nbsp;<small>Votre message est vide.</small>');
define('SEND_TO_TEXT', 'Envoyer l\'E-mail à :');
define('SEND_TO_TYPE', 'radio'); // use '' for a dropdown menu, 'radio' for radio buttons
define('CONTACT_PLAN', 'Vous souhaiter vous rendre dans nos locaux ?
Cliquez ci dessous pour consulter nos plans : [javascript:popupWindow( Palaiseau Dreux (28)
');
define('IMAGE_BUTTON_SEND', 'Envoyer');
define('CONTACT_US_ADDL_TEXT', 'Nos Magasins et nos bureaux sont ouverts
du lundi au vendredi
de 8h30 à 12H00
et de 13h30 à 17h30'); // text such as business hours or other contact info
define('CONTACT_US_ADDL_TEXT_ALIGN','center'); // 'left', 'right' or 'justify' (default is 'center')
?>

<HR>

J'espere que vous pourrez m'aider.

merci a tous

21 réponses

AkeluX
Messages postés
113
Date d'inscription
samedi 15 mai 2004
Statut
Membre
Dernière intervention
9 mars 2007

28 avril 2005 à 16:24
Essaye avec des guillemets simples sur l argument de la fonction popupWindow ...

define('CONTACT_PLAN', 'Vous souhaiter vous rendre dans nos locaux ?
Cliquez ci dessous pour consulter nos plans : [javascript:popupWindow(\' Palaiseau Dreux (28)
');

AkeluX
0
cs_zizou94
Messages postés
83
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
29 avril 2005

28 avril 2005 à 16:35
je pense qu'il faut aussi annoncer la fonction javascript. comment fait on et ou la placer . merci pour vos reponses
0
AkeluX
Messages postés
113
Date d'inscription
samedi 15 mai 2004
Statut
Membre
Dernière intervention
9 mars 2007

28 avril 2005 à 16:42
Y a pas de fonction popupWindow si tu l as pas créé ... mais tu peux utiliser window.open('path') ...

AkeluX
0
floxone
Messages postés
88
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
10 août 2007

28 avril 2005 à 16:44
echo '<script type="text/javaScript">;
window.open("../site/page.php");
</script>';

Sinon, le plus simple :
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_zizou94
Messages postés
83
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
29 avril 2005

28 avril 2005 à 16:49
La function popupwindow est crée elle est utilisé pour l'agrandissement des photo produits. Franchement les gars je pige rien du tout. merci de m'aider
0
floxone
Messages postés
88
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
10 août 2007

28 avril 2005 à 16:55
as tu inclus la fonction js ?

<!-- inclusion des fonctions javascript -->
<script type="text/javaScript" src="../moteur/formulaires.js"></script>

par exemple, si le script js se trouve dans un fichier js. Sinon, sans le src et avec le code javascript entre les 2 balises vers ton <head></head>
0
cs_zizou94
Messages postés
83
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
29 avril 2005

28 avril 2005 à 17:07
Je suis vraiment désoler mais je comprend rien du tout. le code posté plu haut est l'intégralité de mon code pas de balise head. S'il vous plait est ce que quelqun peut m'écrire ce morceau de co de pour ouvrir une popup car franchement ca fait 2 jour que je suis la dessus et je galere grave. S'il vous plait aidez moi et merci a tous ceux qui on repondu.

merci
0
floxone
Messages postés
88
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
10 août 2007

28 avril 2005 à 17:12
pourquoi tu fais pas simplement un [ta page ]
0
malalam
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
28 avril 2005 à 18:51
Hello,



tu definis des constantes la, que tu vas donc reutiliser plus tard dans
diverses pages. Ces pages doivent TOUTES pouvoir acceder a la
definition de ta fonction javascript poppupWindow(). Sinon, il est
normal que ca ne fonctionne pas.

Ta constante est remplacee par sa valeur dans les pages ou tu
l'utilises. PHP genere du html. Donc en sortie tu as du html, avec la
valeur de ta constante. Si le fichier dans lequel est decrite ta
fonction n'est pas lie a ces pages, ton navigateur ne pourra pas
deviner quelle est cette fonction, et creera donc une erreur.

Tu dois mettre ca entre les balises head de tes pages (ou de la page les incluant) :


<script type="text/javascript" src="tonfichierjavascript.js"></script>
0
cs_zizou94
Messages postés
83
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
29 avril 2005

29 avril 2005 à 08:37
Bonjour,

voila le code de la page incluant l'affichage. J'espere que vous pouvez car meme avec vos explications je ne comprend pas. merci beaucoup pour vos réponses.

<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
<title><?php echo TITLE; ?></title>
">
<link rel="stylesheet" type="text/css" href="<? echo TEMPLATE_STYLE;?>">
</head>

<!-- body_text //-->
<?php echo tep_draw_form('contact_us', tep_href_link(FILENAME_CONTACT_US, 'action=send')); ?><table border="0" width="100%" cellspacing="0" cellpadding="0">
----,
----

<?php echo HEADING_TITLE; ?>,
<?php echo tep_image(DIR_WS_IMAGES . 'table_background_contact_us.gif', HEADING_TITLE, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?>
</td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<?php
if ($messageStack->size('contact') > 0) {
?>
<tr>
<td><?php echo $messageStack->output('contact'); ?></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<?php
}


if (isset($HTTP_GET_VARS['action']) && ($HTTP_GET_VARS['action'] == 'success')) {
?>
<tr>
<td class="main" align="center"><?php echo tep_image(DIR_WS_IMAGES . 'table_background_man_on_board.gif', HEADING_TITLE,'0','0', 'align="left"') . TEXT_SUCCESS; ?></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<tr>
<td><table border="0" width="100%" cellspacing="0" cellpadding="2">
----, <?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
<?php echo '' . tep_image_button('button_continue.gif', IMAGE_BUTTON_CONTINUE) . ''; ?>,
<?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?>
</td>
</tr>
</table></td>
</tr>
<?php
} else {
?>
<tr>
<td><center>
<?php echo nl2br(STORE_NAME_ADDRESS);
if (!CONTACT_PLAN == '') {
echo '' . CONTACT_PLAN . '

';
}
?>
</center>
<?php
if (!CONTACT_US_ADDL_TEXT =='') {
echo '' . CONTACT_US_ADDL_TEXT . '

';
}
?>,
<table border="0" width="100%" cellspacing="1" cellpadding="2">
----, <table border=\"0\" width=\"100%\" cellspacing=\"0\" cellpadding=\"2\">
<?php
if ((defined('CONTACT_US_LIST')) && (CONTACT_US_LIST !='')){
echo '----
'. SEND_TO_TEXT . ', '
.'----
';
if(SEND_TO_TYPE=='radio'){
foreach(explode("," ,CONTACT_US_LIST) as $k => $v) {
if($k==0){
$checked=true;
}else{
$checked=false;
}
echo tep_draw_radio_field('send_to', "$k", $checked) . " " . preg_replace('/\<[^*]*/', '', $v) ."
\n";
}
}else{
foreach(explode("," ,CONTACT_US_LIST) as $k => $v) {
$send_to_array[] = array('id' => $k, 'text' => preg_replace('/\<[^*]*/', '', $v));
}
echo tep_draw_pull_down_menu('send_to', $send_to_array);
}
echo "\n, \n\";
}
?>
----

<?php echo ENTRY_NAME; ?>,

----

<?php
// prefill first+last name and email address if customer is logged in
if (tep_session_is_registered('customer_id')) {
$customer_query_raw = "select customers_firstname, customers_lastname, customers_email_address from " . TABLE_CUSTOMERS . " where customers_id='" . $customer_id . "'";
$customer_query = tep_db_query($customer_query_raw);
$customer_array = tep_db_fetch_array($customer_query);
echo tep_draw_input_field('name', $customer_array['customers_firstname'] . " " . $customer_array['customers_lastname'],'readonly');
echo ", ----
" . ENTRY_EMAIL . ", ----
";
echo tep_draw_input_field('email', $customer_array['customers_email_address'],'readonly');
} else {
echo tep_draw_input_field('name');
echo ", ----
" . ENTRY_EMAIL . ", ----
";
echo tep_draw_input_field('email');
} ?>,

<?php
echo \"</td>----
" . ENTRY_SOCIETY . ", ----
";
echo tep_draw_input_field('society');

?>
<?php
echo ", ----
" . ENTRY_PHONE_NUMBER . ", ----
";
echo tep_draw_input_field('phone_number');

?>
<?php
echo ", ----
" . ENTRY_PHONE_FAX . ", ----
";
echo tep_draw_input_field('phone_fax');

?>
----, <?php echo ENTRY_ENQUIRY; ?></td>

----

<?php echo tep_draw_textarea_field('enquiry', 'soft', 50, 15); ?>
</td></tr></table></td>
</tr>
</table></td>
</tr>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<tr>
<td><table border="0" width="100%" cellspacing="0" cellpadding="2">
----, <?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>
<?php
// identify sender as customer or guest
echo tep_draw_hidden_field('sendertype', tep_session_is_registered('customer_id') ? TEXT_CUSTOMER : TEXT_GUEST);
echo tep_template_image_submit('button_send.gif', IMAGE_BUTTON_SEND); ?>,
<?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?>
</td>
</tr>
</table></td>
</tr>
<?php
}
?>
</table></td>
<!-- body_text_eof //-->


<?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>

Merci à tous et si quelqun peut m'expliquer la raison du pourquoi pour que je comprenne enfin ma betise.

merci
0
floxone
Messages postés
88
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
10 août 2007

29 avril 2005 à 09:13
tu pourrais etre sympa et mettre en gras l'appel de ta fonction javascript et également sa déclaration !
0
cs_zizou94
Messages postés
83
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
29 avril 2005

29 avril 2005 à 09:29
voici le fichier avec l'apel de ma fonction

<?php


require('includes/application_top.php');


?>
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html <?php echo HTML_PARAMS; ?>>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
">
<script language="javascript"><!--
var i=0;
function resize() {
if (navigator.appName == 'Netscape') i=40;
if (document.images[0]) window.resizeTo(document.images[0].width +59, document.images[0].height+130-i);
self.focus();
}
//--></script>
</head>





<form method="post">







</html>
<?php require('includes/application_bottom.php'); ?>
0
floxone
Messages postés
88
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
10 août 2007

29 avril 2005 à 09:38
Donc, pour en revenir a ce que tu disais :

- tu as bien des balises head :
<head></head>
- entre ces balises, tu as bien la déclaration d'une fonction javascript :
<script language="javascript"><!--
var i=0;
function resize() {
if (navigator.appName == 'Netscape') i=40;
if (document.images[0]) window.resizeTo(document.images[0].width +59, document.images[0].height+130-i);
self.focus();
}
//--></script>
- et dans ta page, tu appelles ta fonction javascript :


--> Maintenant, c'est la meme chose pour une pop-up. c'est quoi au juste ton probleme ?
0
cs_zizou94
Messages postés
83
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
29 avril 2005

29 avril 2005 à 09:50
Et bien dans le premier post plus haut en fait quand je clique sur le lien rien ne s'affiche
0
floxone
Messages postés
88
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
10 août 2007

29 avril 2005 à 09:58
commence par remplacer ton :
[javascript:popupWindow(\'
Palaiseau Dreux (28)

par

[javascript:window.open(\' Palaiseau Dreux (28)

Histoire de voir deja si ca marche comme ca !

d'ailleur, pourquoi tu as 2 ?????
0
cs_zizou94
Messages postés
83
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
29 avril 2005

29 avril 2005 à 11:06
J'ai essayer mais helas ca ne marche pas. palaiseau ne pointe vers aucun lien

define('CONTACT_PLAN', 'Vous souhaiter vous rendre dans nos locaux ?
Cliquez ci dessous pour consulter nos plans : <href="javascript:window.open(\'http://127.0.0.1/e-commerce/images/img_magasins/plan_palaiseau.jpg\')"> Palaiseau Dreux (28)
0
malalam
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
29 avril 2005 à 11:35
Hello,



tu as oublie le define('CONTACT_PLAN', 'Vous souhaiter vous rendre dans
nos locaux ?
Cliquez ci dessous pour consulter nos plans :

Palaiseau Dreux (28)');



et quand tu feras dans ton html un truc du genre

echo '',CONTACT_PLAN, '

';



cela devrait fonctionner.
0
cs_zizou94
Messages postés
83
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
29 avril 2005

29 avril 2005 à 11:43
franchement je trouve bizarre et je comprend pas du tout je crois que je vais laisser tomber car pour moi ca a l air incoherent
0
malalam
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
29 avril 2005 à 12:11
Bah, ce n'est pas incoherent. Qu'est-ce que tu trouves incoherent ?

Le truc, c'est que, a mon avis, tu utilises un code que tu ne comprends pas. C'est pour ca que tu ne t'en sors pas.

Il y a des bases que tu n'as pas. Ce n'est pas grave hein, lol. Mais ca ne facilite pas les choses.



Tes pages sont un peu compliquees, si tu veux mon avis. Je pense que
c'est une sorte de moteur de templates, mais base sur des constantes.
Ce qui est un peu abherrant pour moi, dans l'absolu, mais bon.



ceci dit :



Une page web est seule au monde. Elle ne sait pas ce qui se passe dans
les autres pages, a moins qu'on le lui dise. Il y a plusieurs moyens de
le lui dire :-) Tu as les fonctions include() et require() en php, par
exemple (utilisee dans ton code la). Ces fonctions lient ta page a
d'autres pages (par exemple, la page definissant tes constantes), de
maniere a ce qu'elle ait les memes connaissances. Donc, la, elle
connaitre les constantes et leurs valeurs definies dans une autre page.

C'est pareil pour ton script javascript. S'il est defini ailleurs, il
faut l'inclure dans ta page actuelle si tu veux utiliser la fonction
qui y est definie.

window.open() ne pose pas ce probleme car ce n'est pas une fonction
fabriquee par un developpeur lambda, mais une fonction interne a
javascript.



Tes autres problemes sont une meconnaissance du html : un [blabla blabla]

est correct

mais

echo "[blabla blabla]";

ne l'est pas. Pourquoi ? Parce que tu dis au echo : ce que tu dois
afficher commence avec des guillemets, et donc se termine avec des
guillemets. Du coup pour php, il commence apres ton echo, ok, mais se
termine au 1er guillemet rencontre. Ce qui suit provoque une erreur,
puisque normalement, tu devrais apres les guillemets de fin avoir un ;
et non pas un blabla...etc.

Javascript reagira de la meme maniere.

Une meconnaissance du javascript, et du php, aussi, donc.

Et forcement, ca complique beaucoup quand tu te heurtes a un probleme.

mais essaye d'analyser la situation :

define() en php a cette syntaxe :

define ('nom de ta constante', 'valeur de ta constante');

si tu fais :

define ('BLA', 'c'est ma valeur');

tu te rends bien compte que tu auras une erreur? Vu que tu as une
apostrophe DANS ta valeur, php va estimer que ta valeur commence par c
et se termine tout de suite apres, puisqu'il rencontre une apostrophe
fermante.

Pour ca, on peut echaper :

define ('BLA', 'c\'est ma valeur');

la cela fonctionne, car \ indique a php de ne pas tenir compte du caractere qui le suit.

Tu peux mettre des guillemets entre deux apostrophes, pas de probleme, ou l'inverse :

echo '';

fonctionne.

echo "c'est ma valeur";

fonctionne aussi.



Maintenant reprend ton define et ton lien et analyse ce qui doit etre ecrit.

Pour la javascript : window.open() prend plusieurs parametres. Essaye avec ceux-ci :

window.open("ton lien", "nom du popup", "ne met rien ici, mais c'est ici que l'on definit la taille, etc du popup");



pense aussi au fait que ta page doit pouvoir avoir acces aux
connaissances dont elle a besoin : fonctions javascript fabriquees,
fonctions php fabriquees, variables, constantes etc...



Je me doute que tout cela est complique. Mais...se lancer dans un tel
code, en utilisant un script existant complexe, avec tres peu de
connaissances...c'est suicidaire. Il faut quand meme avoir de solides
bases deja, cela vaut mieux.



Bon courage :-)
0
navyzolf
Messages postés
4
Date d'inscription
jeudi 23 juin 2005
Statut
Membre
Dernière intervention
27 octobre 2005

27 oct. 2005 à 03:21
Salut malalam,
Ben pour un qui criait au secours, il aurait au moins pu te dire merci loll
Tout cà pour dire qu'un post même perdu et même presqu'un an après.. cà peut servir, il m'a bien dépanné ;-)
Merci et bonne soirée..
Navy
0