$_server['php_self'] / javascript

hi
Invité n'ayant pas de compte PHPfrance

14 mai 2005, 22:42

salut

j'ai lu le post suivant :
http://phpfrance.com/forums/voir_sujet- ... te-php.php
je me suis donc dit ça fonctionne ...
j'ai donc fait ça

document.compte.method = "POST";
document.compte.action = <?php echo $_SERVER['PHP_SELF'];?>;
document.compte.submit();

de cette façon le code javascript n'est mm pas interprété... j'ai procédé diféremment ...

document.compte.method = "POST";
document.compte.action = "<?php echo $_SERVER['PHP_SELF'];?>";
document.compte.submit();

de cette façon la le code est interprété mais erreur...

Forbidden
You don't have permission to access /site/< on this server.

que faire ? :p merci !

Mammouth du PHP | 983 Messages

15 mai 2005, 00:14

Donne nous le morceau de ton code et l'erreur qui t'est renvoyée, parce que la... :wink:

hi
Invité n'ayant pas de compte PHPfrance

15 mai 2005, 00:36

mon code fonctionne parfaitement si je remplace
document.compte.action = <?php echo $_SERVER['PHP_SELF'];?>;

par document.compte.action = "page.php";

ça fonctionne sans aucun probléme ...

et j'ai spécifier l'erreur juste à la fin "Forbidden ..." :)

lorsque j'enlève les " " j'ai cette erreur qui est renvoyer dans la console javascript

Erreur : syntax error
Fichier Source : http://127.0.0.1/site/compte.js
Ligne : 121, Colonne : 27
Code Source : document.compte.action = <?php echo $_SERVER['PHP_SELF'];?>;

c'est bien une erreur de syntaxe logique puisque le code n'est pas executé :)

Eléphant du PHP | 102 Messages

15 mai 2005, 00:51

Pour que ton code PHP soit interprété par le serveur il faut que la page soit nommée .php. Si elle est nommé .js, il te renverra une erreur :)

Mammouth du PHP | 1885 Messages

15 mai 2005, 03:36

Montre nous la source afin que l'on voit si ce que PHP retourne est bien ce que tu attends. En fait, il faut vérifier si le code PHP fait bien ce qu'il est supposé faire.

:)
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

hi
Invité n'ayant pas de compte PHPfrance

15 mai 2005, 12:50

je comprends pas ce que vous me dites.. je connais parfaitement le client-serveur différence js/php mais je vois pas pq vous avez besoin de plus de code

:shock:

tout fonctionne avec

document.compte.method = "POST";
document.compte.action = "reg.php";
document.compte.submit();

sauf que moi je veux pouvoir l'executer ça sur la mm page...

je veux juste remplacer "reg.php" par $_SERVER['php_self'] sans succèes jusqu'à présent :/

si le problème vient de chez moi montré moi un exemple pour que je comprenne parce que là je suis plus rien :?

ViPHP
pjl
ViPHP | 2119 Messages

15 mai 2005, 13:47

Est-ce que quelqu'un a parlé de client serveur ?

On te demande juste de regarder dans ton navigateur le code source final généré par ta page.

Invité
Invité n'ayant pas de compte PHPfrance

15 mai 2005, 15:00

Pour que ton code PHP soit interprété par le serveur il faut que la page soit nommée .php. Si elle est nommé .js, il te renverra une erreur :)
client / serveur ?

ma page n'est pas nommé .js mais j'appelle une page .js dans ma page php pour verifier mon formulaire...

tu veux quel partie du code ?

Invité
Invité n'ayant pas de compte PHPfrance

15 mai 2005, 15:20

voila pour repartir sur de bonnes bases voici un exemple que je viens d'écrire.. on se comprendra mieux je pense :)

fichier test.php
<?php
echo "
<html>
<head>
<script language='JavaScript' src='test.js'></script>
</head><body>
<form name='test' action='' method=''>
<input type='text' name='nom' value=''>
<input type='button' name='bt_valider' value='valider' onclick='controle()'>
</form>
</body></html>";
?>
fichier test.js
function controle()
{
if(document.test.nom.value == "")
{
alert('Erreur');
}
else
{
document.test.method = "POST";
document.test.action = "<?php echo $_SERVER['PHP_SELF'];?>";
document.test.submit();
}
}

voila mon code ;)

lorsque je l'éxecute de cette façon j'ai l'erreur suivante :
Forbidden
You don't have permission to access /< on this server.

je suis à la racine de mon serveur :)

Mammouth du PHP | 1885 Messages

15 mai 2005, 17:10

Ton fichier contenant le code PHP est un .js
.js = pas d'exécution de PHP.
La programmation est l'expression de la poésie d'un programmeur
Génération PHP

Invité
Invité n'ayant pas de compte PHPfrance

15 mai 2005, 17:50

impossible donc...

pourtant dans l'autre post ils avaient l'air de dire le contraire :cry:

Eléphant du PHP | 219 Messages

15 mai 2005, 18:14

Salut,

si tu veux rediriger vers la même page tu peux faire :

Code : Tout sélectionner

document.test.action = "";
a+
daoud

Mammouth du PHP | 1885 Messages

15 mai 2005, 20:16

Mets l'extension .php au lieu de .js
C'est pas interdit de modifier l'extension

:)
La programmation est l'expression de la poésie d'un programmeur
Génération PHP