Tom's Guide > Forum > Programmation > [résolu]équivalent de javascript en php

[résolu]équivalent de javascript en php

Forum Programmation : [résolu]équivalent de javascript en php

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Salut,
j'ai fais sur mon site un quizz (tout est expliqué dans un autre topic). Pour calculer le score, j'ai besion d'une variable départ que je défini la première fois que je viens sur la page (avec le lien ma_page.php?code=1), et qu'ensuite je retransmet par un formulaire.
La variable est inséré dans une balise <input> grace à du javascript. Petit hic, j'ai un message d'erreur qui me dit que document.formulaire.depart n'est pas un objet. Et pourtant, moi je crois bien que document.formulaire.depart existe.
Quelqun voit une erreur ?

Code :
  1. <head>
  2.     <script language="javascript">
  3.       <?php
  4.         if ($code == 1){
  5.           echo "maintenant = new Date();";
  6.           echo "depart = maintenant.getTime();";
  7.         }
  8.         else{
  9.           echo "depart = $depart ;";
  10.         }
  11.       ?>
  12.       document.formulaire.depart.value = depart;
  13.     </script>
  14.   </head>
  15.   <body>
  16.     <form name="formulaire" method="post" action="ma_page.php">
  17.       <input name="depart" value="">
  18.     </form>


Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

AIDEZ-MOI !!!!!!!!!!!!!!!!! Je capte plus rien !
edit : le monsieur a dit pas de pleure, alors j'enlève les pleures.

Répondre à erdnaxeli

hey mais soit patient un peu...

je comprend pas ce que tu veux faire! Mettre l'heure dans ton input par défaut?

Répondre à imer@IDN

En fait je calcule l'heure de mon quizz en fonction du temps depuis lequel on a commencé le quizz (+ ça fait longtemps, - moins une réponse juste ne rapporte de pionts). Mais le truc, c'est que je n'affiche pas toute les questions du quizz sur une seule page, j'affiche 3 questions par page, puis on clique sur valider et la même page est rapelé est affich 3 nouvelles questions.
Seulement, pour calculer depuis combien de temps on a commencé le quizz, il faut que je ne définisse depart que la première fois que je viens sur la page. C'est pour ça que lorsque l'on commence le quizz, la page est appelé avec ?code=1, ce qui me permet de savoir si je dois calculer depart ou non. Ensuite depart est mis dans le input pour le transmettre grace à un formulaire qui rappelle la même page mais sans ?code=1.
Le problème, c'est que je n'arrive pas à mettre depart dans le input.

Répondre à erdnaxeli

Mais pourquoi vouloir attribuer la valeur dans le input via Javascript alors que l'attribut value de la balise input le fait

Répondre à imer@IDN

Gné ? :confused:
Je comprend pas trop là. Tu dis que depart peut se mettre tout seul dans le input ??!

Répondre à erdnaxeli

<input name="ce que tu veux" value="<?php $depart ?>">

Répondre à imer@IDN

Ah ok j'ai compris. Mais ce n'est pas possible car lorsque l'on commence la quizz je n'ai pas encore défini la variable.

Répondre à erdnaxeli

je laisse tomber je comprend rien à un problème tout con

Répondre à imer@IDN

C'est bien là le problème : je ne comprend rien du tout, sinon je ne serais pas là.
En fait le vrai problème c'est pas de savoir si je met

Code :
  1. document.formulaire.depart.value = depart;
  2.     <form name="formulaire" method="post" action="ma_page.php">
  3.       <input name="depart" value="">
  4.     </form>


ou :

Code :
  1. <input name="ce que tu veux" value="<?php $depart ?>">


(d'ailleur je met le premier code)
Le problème c'est qu'internet ne me trouve pas document.formulaire.depart .

Répondre à erdnaxeli

mais c'est normal nom de diou c'est tellement mal codé que je sais meme pas comment t'expliqué de manière générique et sans parlé de ton quizz

Les mecs ils expliquent leur problème en disant oui j'ai un souci je n'arrive pas a afficher la tronche de mon voisin qui à un pc de la mort... On s'en fous faites des syntheses

A cela je suis fatigué donc :jesors:

Répondre à imer@IDN

explique-moi donc ce qui est mal codé, car apparament tu as l'air de t'y connaitre, non ?

Répondre à erdnaxeli

Pour moi document.formulaire.depart.value implique une conditionnelle avec des test pas d'affectation

Mais ce que tu veux faire c'est transmettre par formulaire la date et l'heure enregistré dans $depart, non?

Tu l'inseres avec le value de input et dans la page ou tu envoies les données tu recuperes cette valeur avec le $_POST

Mais j'arrive pas a voir si c'est moi qui suis a coté de la plaque, parce que ce que je comprend est simple et tu t'y prend mal

Répondre à imer@IDN

Je n'ai pas tout à fait compris ce que tu me dit.
Je vais réexpliqué plus clairement ce que je cherche à faire.
J'essaye que lorsque l'on vient sur la page pour la première fois, depart soit défini avec la date et l'heure. Mais ensuite, depart est transmit grace à un formulaire et on ne le redéfinit pas.
Le problème, c'est qu'au début je défini depart avec du javascript. C'est pourquoi je ne peux pas mettre <input name="depart" value="<?php echo $depart; ?>"> car depart n'est pas encore défini.

Une solution serait de faire

Code :
  1. maintenant = new date();
  2. depart = maintenant.getTime();


en php et pas en javascript. Je pourrais alors faire <input name="depart" value="<?php echo $depart; ?>">.
Mais je ne sais pas si c'est possible ...

Répondre à erdnaxeli

ahhhh j'ai compris mais t'en à rien à carré du javascript fait tout en php, utilise la fonction date de php (je croyais que c'etait du php et non du JS fatigué j'ai dis), le resultat tu le mets dans $depart et tu mets cette variable dans le value du input (sans le echo)

Répondre à imer@IDN

quelqun saurait comment faire pareil que

Code :
  1. maintenant = new date();
  2. depart = maintenant.getTime();

mais en php ?

Répondre à erdnaxeli

si je fais ça c'est bon ?(en php)

Code :
  1. $depart = microtime();

Répondre à erdnaxeli

Non ça n'a pas lair de marcher. Aidez-moi !
edit : le monsieur a dit pas de pleure, alors j'enlève les pleures.

Répondre à erdnaxeli

en fait il que je trouve un truc en php qui me donne la date en miliseconde depuis le 1er janvier 1970 comme getTime.

Répondre à erdnaxeli

je te laisse chercher la reponse est dans le lien je veux pas voir de pleur!!

Répondre à imer@IDN

Bon, puisqu'on a plus le droit de pleurer, je sèche mes larmes ...:cry:
Sinon date() c'est pas ce qui me faut, time() non plus (c'est en secondes). Mais j'ais trouvé ... microtime().
Seulement, comme je l'ai dit plus haut, je ne sais pas trop m'en servir. Est-ce que si je met $depart = microtime() ça marche ?

Répondre à erdnaxeli

je reviens demain, mais si vous avez une idée qui m'aiderait, n'hésitez pas !

Répondre à erdnaxeli

Salut, c'est bon j'ai résolu mon problème en fait c'était un truc tellement con que j'ose pas le dire :oops: ...
Voila mon fameux quizz qui m'a posé tant de problème.
Mais je l'ai pas encore mis sur mon site car il rest malgrè tout un dernier problème, mais ça je vais m'en occuper plus tard (c'est déjà bien d'avoir réussi tout le reste) ...

Répondre à erdnaxeli

ok ça je le sentais le probleme con, essaie de chercher tout seul la porchaine fois, et essaie de proteger ton index on voit toutes tes ressources !

Répondre à imer@IDN
Tom's Guide > Forum > Programmation > [résolu]équivalent de javascript en php
Aller à :

Il y a 2953 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens