Javascript dans PHP
Répondre à la discussion
Affichage des résultats 1 à 16 sur 16

Javascript dans PHP



  1. #1
    parousky

    Javascript dans PHP


    ------

    Bonjour, pour mon site j'ai créé une base de données qui doit réunir entre autres une région, un département et un code postal, précisés par l'utilisateur. Mais celui-ci pourra ne préciser que le code postal s'il le veut. Alors mon code doit faire correspondre un département en fonction du code postal ( je n'ai pas encore la fonction pour la région mais j'aurais besoin d'éclaircissements sur la syntaxe pour le moment). Cette fonction département est simple, c'est la partie entière du code postal divisé par 1000.
    Mais ensuite, pour insérer ça dans une base de données, voilà ce que j'ai tenté :

    $req = $bdd->prepare('INSERT INTO annonces(Region, Departement, Code) VALUES(?,?,?)');
    $req->execute(array(
    region(),
    departement(),
    $_GET['code'],

    ));

    Où region et departement sont mes deux fonctions, mais ça me dit que ces fonction sont non définies... Je ne sais pas si ça compte, mais j'ai écris ces fonctions avant le <!DOCTYPE html>...

    Merci d'avance pour votre aide !

    -----

  2. #2
    Arzhur

    Re : Javascript dans PHP

    Bonjour,


    Si ton code n'est pas trop long ça serait pas mal de le mettre en entier (avec les balises CODE) (n'oublie pas d'enlever les login/pwd de la connexion à la BDD).



    Je ne sais pas si ça compte, mais j'ai écris ces fonctions avant le <!DOCTYPE html>...
    Au pire tu peux essayer en les mettant après...

  3. #3
    Bluedeep

    Re : Javascript dans PHP

    Je ne connais strictement rien à PHP (et n'ai pas du tout l'intention de combler cette "lacune")mais je ne comprends pas comment un script serveur (quel que soit la techno) serait en mesure de demander directement l'exécution d'une fonction dans le script client(car si j'ai bien compris les fonctions region() et departement() sont des fonctions en javascript coté client).

  4. #4
    Arzhur

    Re : Javascript dans PHP

    car si j'ai bien compris les fonctions region() et departement() sont des fonctions en javascript coté client
    si c'est le cas, ça explique tout....maintenant sans le code on peut pas trop savoir

  5. A voir en vidéo sur Futura
  6. #5
    Bluedeep

    Re : Javascript dans PHP

    Citation Envoyé par Arzhur Voir le message
    si c'est le cas, ça explique tout....maintenant sans le code on peut pas trop savoir
    Et bien, encore une fois, PHP j'en ignore tout, mais la combinaison du titre et de la phrase suivante :
    j'ai écris ces fonctions avant le <!DOCTYPE html>...
    me fait penser qu'il essaye d'exécuter une fonction client depuis le code serveur.

    On appelle cela communément du "cargo cult programming"

  7. #6
    Arzhur

    Re : Javascript dans PHP

    il essaye d'exécuter une fonction client depuis le code serveur.
    J'avoue que ça y ressemble fort, mais bon, respectons la présomption d'innocence.

    Et puis si c'est le cas ça sera pas trop dur à corriger.





    cargo cult programming
    Je connaissais pas ça, on dirait une forme avancée du Brute Force Programming

  8. #7
    parousky

    Re : Javascript dans PHP

    Bonjour, merci pour vos réponses ! Et bien mon code est assez long, alors voilà seulement la partie qui concerne mon problème :

    Code HTML:
    <SCRIPT language="Javascript">
    function departement(x)
    {
    return Math.floor(x/1000);
    }
    </SCRIPT>
    <!DOCTYPE html>
    <html>
    <body>
    
    
    <?php
    if(!empty($_GET['code']) AND !empty($_GET['categorie']) AND !empty($_GET['prix']) AND !empty($_GET['prixheure']) AND !empty($_GET['description']) AND !empty($_GET['valider']))
    {
    
    
    
    $req = $bdd->prepare('INSERT INTO annonces(pseudo, Region, Departement, Code, Categorie, description, Prix, prixheure) VALUES(?,?,?,?,?,?,?,?)');
    $req->execute(array($_GET['pseudo'],
    region(),
    
       departement(), 
     $_GET['code'],
     $_GET['categorie'],
     $_GET['description'],
     $_GET['prix'],
     $_GET['prixheure']
     ));
    }
    ?>
    </body>
    </html>
    Dernière modification par JPL ; 21/01/2014 à 23h33. Motif: Ajout de la balise HTML

  9. #8
    Arzhur

    Re : Javascript dans PHP

    Comme dit précédemment PHP ne peut pas appeler du JS : l'un est côté serveur , l'autre client.

    Soit tu traduis tes fonctions JS en PHP ( vu la tête de departement() ça devrait aller). Soit tu fais toute ta tambouilles côté client avec JS et tu inserts en base via AJAX (y'a p-e d'autre moyen mais je "connais" qu'ajax)

  10. #9
    parousky

    Re : Javascript dans PHP

    D'accord, et comment fais-tu pour traduire cette fonction de JS à PHP ?

  11. #10
    galerien69

    Re : Javascript dans PHP

    ben t'apprends la syntaxe php et tu ecris ta fonction toi même au lieu de la copier coller?

    PS:
    Soit tu fais toute ta tambouilles côté client avec JS et tu inserts en base via AJAX (y'a p-e d'autre moyen mais je "connais" qu'ajax)
    1) php prend des GET, généralement ca veut dire que c'est du restAPI, genre l'utilisateur met l'url et hop ca load la php page, donc pas de js executé. Donc direct ca invalide l'idée qu'on puisse avoir du js
    2) SI on suppose que on a une page web, où on peut construire l'url par javascript, alors il s'agit simplement de communiquer au serveur qu'on veut afficher la page correspondant à cette url. Ca peut se faire par ajax, ou simplement en ...chargeant la page (window.location=url). Dans tous les cas, ca correspond à un GET sauf que dans le premier cas, on recharge pas la page courante entierement.
    3) Il existe également les websockets qui permettent d'établir une connexion client/serveur (mais bon php je sais pas si ca supporte) et c'est pas pertinent ici vu que ya pas besoin d'avoir une connexion double sens, je la cite juste pour l'info.

  12. #11
    Bluedeep

    Re : Javascript dans PHP

    Citation Envoyé par galerien69 Voir le message
    ben t'apprends la syntaxe php et tu ecris ta fonction toi même au lieu de la copier coller?

    PS:

    1) php prend des GET, généralement ca veut dire que c'est du restAPI, genre l'utilisateur met l'url et hop ca load la php page, donc pas de js executé. Donc direct ca invalide l'idée qu'on puisse avoir du js
    Je ne connais pas PHP mais doute fort qu'une techno serveur ne supporte pas le POST. A vrai dire, je ne pense même pas que cela existe.

    Ici il faut simplement qu'il donne la régle de gestion qu'il applique sur les CP et de là voir si elle doit être traité coté serveur ou coté client.
    Je ne comprend sa division par 1000 et ne comprend pas ce qu'il veut faire.

  13. #12
    Arzhur

    Re : Javascript dans PHP

    Donc direct ca invalide l'idée qu'on puisse avoir du js
    Vu le code actuel et ton analyse je suis d'accord mais (pour ma défense) rien ne t’empêches de faire une fonction js qui sur un clic va récupérer/contrôler les valeurs saisies dans différents champ et les envoyer au serveur (voir même gérer un retour serveur).

    Je ne comprend sa division par 1000 et ne comprend pas ce qu'il veut faire.
    il faudrait effectivement savoir ce que sont censé faire les fonctions : region , departement (apparemment celle-ci divise par 1000 et arrondis)

  14. #13
    Bluedeep

    Re : Javascript dans PHP

    Citation Envoyé par Arzhur Voir le message
    il faudrait effectivement savoir ce que sont censé faire les fonctions : region , departement (apparemment celle-ci divise par 1000 et arrondis)
    Oui, donc si je saisis le département 2B (Haute Corse ), et que je le divise par 1000 ça fait quoi ?

    Revoir les règles de gestion avant d'écrire du code.

  15. #14
    bisou10

    Re : Javascript dans PHP

    forcement region() et departement() sont définies côté client donc ne sont pas accessibles. Le plus simple est de les ré-implementer coté serveur.

  16. #15
    Bluedeep

    Re : Javascript dans PHP

    Citation Envoyé par bisou10 Voir le message
    forcement region() et departement() sont définies côté client donc ne sont pas accessibles. Le plus simple est de les ré-implementer coté serveur.
    Déjà dit; ou encore de les exécuter avant de faire le post de la page.
    Mais encore une fois, il faudrait avoir une idée précise des règles de gestion appliquées à sa saisie. Pour l'instant c'est flou ....

  17. #16
    galerien69

    Re : Javascript dans PHP

    @Bluedeep
    je ne voulais pas dire que PHP ne supporte que le GET, je voulais dire que dans son script il lit des GET. Et meme si tu peux poster un formulaire en mode GET, generalement c est fait en mode post, et donc ca me laisse penser que lauteur du topic ne fait pas forcement un formulaire "classique" mais pe un simple appel par url...

    @Arzhur
    Je voulais pas t'agresser, je disais juste que ya des alternatives a AJAX depuis une page qui a deja ete loadee. Hormis les websockets, je me suis egalement retenu de porter jugement sur les methodes. (mais je partage ton point de vu concernant l emploi d ajax pour valider/soumettre le formulaire)

Discussions similaires

  1. javascript
    Par berguem40 dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 31/01/2012, 14h33
  2. javascript hauteur dans une page web
    Par johny005 dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 13/11/2011, 21h55
  3. Javascript
    Par invitea28e5912 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 14/11/2008, 14h47
  4. javascript : inserer du html dans un noeud ?
    Par guigui-x dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 17/05/2007, 12h00
  5. SQL et JavaScript
    Par guigui-x dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 16/05/2007, 13h05