OVH Cloud OVH Cloud

javascript et variable php

7 réponses
Avatar
Tran
Bonjour

J'ai un script php avec du javascript., avec ce script java, je voudrais
ouvrir une page en php avec :
echo '<script language="Javascript"
document.location.replace("gaucherecherchedossier.php?sousrep="' echo
$top' ");
</script>';

(ps: si je suprime (?sousrep="' echo $top' ") tout fonctionne presque comme
je veux.)
$top' est valable (j'ai fait un echo avec). Mais pas de bol, j'ai une
erreur (comme de bien entendu).
Dans l'idée, je voudrais une url javascript avec une variable php.
De quelle façon je me plante et de quelle façon m'en sortir ??

Si quelqu'un a une idée du pouquoi ça ne fonctionne pas, je suis preneur.

Merçi d'avance

7 réponses

Avatar
ASM
Bonjour

J'ai un script php avec du javascript., avec ce script java, je voudrais
ouvrir une page en php avec :
echo '<script language="Javascript"
document.location.replace("gaucherecherchedossier.php?sousrep="' echo
$top' ");
</script>';

De quelle façon je me plante


tu te plantes dans l'écriture du javascript

et de quelle façon m'en sortir ??

<?php
print ('<script type="text/javascript">
self.location = 'gaucherecherchedossier.php?sousrep='.$top.'';
</script>');
?>
ou ?
<script type="text/javascript">
self.location = 'gaucherecherchedossier.php?sousrep=<? =$top ?>';
</script>


Si quelqu'un a une idée du pouquoi ça ne fonctionne pas, je suis preneur.


pas fermée la balise d'ouverture du JS (manque > après script")

et ce n'est pas : echo $top'
mais : echo $top
ou alors il manque des ; de fin d'instruction php qquepart ! ! !

si l'echoyage ne fait pas passer à la ligne (je ne sais pas ce point) :
<?
echo '<script type="text/javascript">
document.location.replace("gaucherecherchedossier.php?sousrep="';
echo $top'");
</script>';
?>

ou :
<?
echo '<script type="text/javascript">
document.location.replace("gaucherecherchedossier.php?sousrep="'.$top.'");
</script>';
?>

et même peut-être tout simplement ?
<?
echo '<script type="text/javascript">
document.location.replace("gaucherecherchedossier.php?sousrep=$top");
</script>';
?>

--
Stephane Moriaux et son [moins] vieux Mac

Avatar
Thibaut Allender
J'ai un script php avec du javascript., avec ce script java, je voudrais
ouvrir une page en php avec :
echo '<script language="Javascript"
document.location.replace("gaucherecherchedossier.php?sousrep="' echo
$top' ");
</script>';



RTFM : http://www.php.net/manual/fr/language.operators.string.php
pas besoin de répéter "echo" pour faire de la concaténation de chaîne.

De plus, language="javascript" est obsolète, lui préférer
type="text/javascript"

On peut également s'interroger sur l'utilité d'un
document.location.replace appelé hors d'une fonction JS (donc, au
chargement de la page...). Pourquoi ne pas appeler directement la bonne
page, ou, si c'était impossible pour une raison ou une autre, utiliser
directement un header('Location: ...'); qui aura également l'avantage de
fonctionner même si javascript a été désactivé au niveau du client.

Il est important de rappeler que le processus logique d'apprentissage
est, dans l'ordre, HTML, CSS, (JS,) PHP

--
thibaut allender | http://capsule.org | http://photo.capsule.org

Avatar
Mike Massonnet
Tran wrote:

Bonjour

J'ai un script php avec du javascript., avec ce script java, je voudrais
ouvrir une page en php avec :
echo '<script language="Javascript"
document.location.replace("gaucherecherchedossier.php?sousrep="' echo
$top' ");
</script>';



avec des balises, des echo là ou il faut, et ça sera mieux :

<script language="Javascript">
document.location.replace("gaucherecherchedossier.php?sousrep=<?=$top?>");
</script>

--
~#{[^_^]}#~

Avatar
Tran
Bonjour

Merci de toutes les réponces.
J'ai fait un panaché de ce que vous m'avez apporté et ça donne

echo '<script language="Javascript">
parent.frames["centrerecherchedossier"].location.reload();

document.location.replace("gaucherecherchedossier.php?sousrep='.$source.'");
</script>';

Pour info, j'ai utilisé le javascript car, comme je travail avec des frames,
je ne savais pas comment recharger ma frame centrale en php (j'ai cherché
pourtant, mais google est grand)

En tout cas, vous m'avez bien aidé
Avatar
ASM

Pour info, j'ai utilisé le javascript car, comme je travail avec des frames,
je ne savais pas comment recharger ma frame centrale en php (j'ai cherché
pourtant, mais google est grand)


si tu as nommé tes frames (et je comprends que tu l'as fait)

<a href="gaucherecherchedossier.php?sousrep=<? =$source ?>"
onclick="parent.centrerecherchedossier.location=reload();
">montrer <? =$source ?></a>

mais un petit form aurait pu faire non ?

<form action="gaucherecherchedossier.php"
onsubmit="parent.centrerecherchedossier.location=reload();">
rechercher : <input type=text name="sousrep" value="<? =$source ?>">
<input type=submit value=GO>
</form>

ou même :
<form action="gaucherecherchedossier.php">
rechercher : <input type=text name="sousrep" value="<? =$source ?>">
<input type=submit value=GO>
</form>

avec dans : gaucherecherchedossier.php
<body onload="parent.centrerecherchedossier.location=reload();">
ou un JS dans le head s'il faut reloader avant chargement

et si ta page de cadres ne sert qu'à çà :

<frame name="gaucherecherche"
onload="parent.centrerecherchedossier.location=reload();"

--
Stephane Moriaux et son [moins] vieux Mac

Avatar
Thibaut Allender
Pour info, j'ai utilisé le javascript car, comme je travail avec des frames,
je ne savais pas comment recharger ma frame centrale en php (j'ai cherché
pourtant, mais google est grand)


mon dieu, des frames :(
http://www.openweb.eu.org/articles/finir_cadres/

xpost + fu2 fr.comp.infosystemes.www.auteurs

--
thibaut allender | http://capsule.org | http://photo.capsule.org

Avatar
Tran
mais un petit form aurait pu faire non ?


Je ne connait pas mais je vais jeter un oeil, histoire de m'endormir un peu
moins bète.

Je n'ai pas de référence en php et javascript donc je joue au apprentis
sorcier et je comprend que parfois je dois hérisser le poil des personnes
qui lisent mes postes