IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[PHP-JS] problème avec mon document.write


Sujet :

Langage PHP

  1. #1
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut [PHP-JS] problème avec mon document.write
    Salut,
    voila j'ai une page qui appelle ce code : index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script language="javascript" type="text/javascript" src="barre_fr.php?bgcolor=B6B6B6"></script>
    Et voici : barre_fr.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.write('<?php if (isset($_POST['search'])) { $search=$_POST['search']; header('location: search.php?search='.$search.'&type=web&lang=fr'); } ?><html><body><form method=\'post\' action=\'index.php\' target=\'_blank\'><TABLE bgcolor=\"#<?php if(isset($_GET['bgcolor']) && !empty($_GET['bgcolor'] )) { $msg = $_GET['bgcolor']; echo $msg ; } ?>\" cellSpacing=0 cellPadding=0 border=0 width=\'100%\' height=\'70\'><TR><TD align=center><font class=\'menua\'><INPUT maxLength=\'200\' size=\'40\' name=\'search\' >&nbsp;&nbsp;<INPUT type=\'submit\' value=\' Rechercher \'><BR></TD></TR></TABLE></form></body></html>');
    Et le soucis c'est ca ne fonctionne pas, quand j'affiche la page index.php pas de soucis apparemment mais quand je fais Rechercher, ca bug, je voit cela :


    S'avez vous d'où vient le problème?

    Merci

  2. #2
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    oui, toujours du même principe : on ne peut pas envoyer un header une fois qu'on a commencé à écrire dans le document.
    http://php.developpez.com/faq/?page=...s_already_sent

  3. #3
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Alors comment faire?

  4. #4
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Tu peux faire une redirection en javascript ?

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 31
    Points : 31
    Points
    31
    Par défaut
    Redirection js :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript"><!--
    document.location.href='cible.html';
    //--></script>
    Tu peux aussi utilser une balise meta.

    A noter que les redirections js et meta ne sont pas interprétés correctement par les référeceurs...En effet, un header() php va redirger correctement les bots alors que les meta et le js vont poser problème

  6. #6
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Il faut absolument la redirection en PHP car comme vous le voyez je récupère une valeur qui est ensuite retransmitte.

  7. #7
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Citation Envoyé par kevinf
    Il faut absolument la redirection en PHP car comme vous le voyez je récupère une valeur qui est ensuite retransmitte.
    Rien ne t'empêche d'écrire cette redirection JS en utilisant PHP pour mettre des valeurs dynamiques dedans.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript"><!--
    document.location.href='search.php?search=<?php echo $search; ?>';
    //--></script>

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 31
    Points : 31
    Points
    31
    Par défaut
    Voici une solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
    session_start();
     
    $_SESSION['search'] = 'toto';
     
    include('header.php');
    ?>
    Dans header.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
    session_start();
     
    if(isset($_SESSION['search'])) {
      header("location: search.php?search=".$_SESSION['search']);
    }
    ?>

  9. #9
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Je sait pas si vous avez compris ce que je veux faire :
    En fait j'ai ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php if (isset($_POST['search'])) { $search=$_POST['search']; header('location: search.php?search='.$search.'&type=web&lang=fr'); } ?><html><body><form method=\'post\' action=\'index.php\' target=\'_blank\'><TABLE bgcolor=\"#<?php if(isset($_GET['bgcolor']) && !empty($_GET['bgcolor'] )) { $msg = $_GET['bgcolor']; echo $msg ; } ?>\" cellSpacing=0 cellPadding=0 border=0 width=\'100%\' height=\'70\'><TR><TD align=center><font class=\'menua\'><INPUT maxLength=\'200\' size=\'40\' name=\'search\' >&nbsp;&nbsp;<INPUT type=\'submit\' value=\' Rechercher \'><BR></TD></TR></TABLE></form></body></html>
    Que je voudrait afficher en faisant ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script language="javascript" type="text/javascript" src="barre_fr.php?bgcolor=B6B6B6"></script>
    Alors j'ai fais ca sur barre_fr.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.write('<?php if (isset($_POST['search'])) { $search=$_POST['search']; header('location: search.php?search='.$search.'&type=web&lang=fr'); } ?><html><body><form method=\'post\' action=\'index.php\' target=\'_blank\'><TABLE bgcolor=\"#<?php if(isset($_GET['bgcolor']) && !empty($_GET['bgcolor'] )) { $msg = $_GET['bgcolor']; echo $msg ; } ?>\" cellSpacing=0 cellPadding=0 border=0 width=\'100%\' height=\'70\'><TR><TD align=center><font class=\'menua\'><INPUT maxLength=\'200\' size=\'40\' name=\'search\' >&nbsp;&nbsp;<INPUT type=\'submit\' value=\' Rechercher \'><BR></TD></TR></TABLE></form></body></html>');
    Mais ca ne fonctionne pas.

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 31
    Points : 31
    Points
    31
    Par défaut
    Ce n'est absolument pas possible

  11. #11
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Il n'y pas un autre moyen afin de coutourner?

  12. #12
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Tu devrais essayer d'avoir une vision claire de comment marchent PHP et Javascript, individuellement, avant de les mélanger.

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 31
    Points : 31
    Points
    31
    Par défaut
    La façon dont tu veux afficher du php nous fait dire que php est interprété coté client alors que c'est coté server...

  14. #14
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Oui, mais y aurait donc une autre manière de faire la même mais différemment?

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 31
    Points : 31
    Points
    31

  16. #16
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Je ne voit pas comment mettre sa dans mon barre_fr.php dans document.write car vous m'avez dit pas de PHP dedans.

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 31
    Points : 31
    Points
    31
    Par défaut
    Je ne passe plus par un fichier js mais par une iclusion de fichier php

  18. #18
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    Je ne comprend pas tout, ce serait possible que tu montre de la facon que je voudrais voir, c'est à dire : une page avec un code de ce style pour afficher le formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script language="javascript" type="text/javascript" src="barre_fr.php?bgcolor=B6B6B6"></script>
    Et l'autre page barre_fr.php avec les fonctions que je voudrais en fait, comme ca mais d'une facon que ca marche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php if (isset($_POST['search'])) { $search=$_POST['search']; header('location: search.php?search='.$search.'&type=web&lang=fr'); } ?><html><body><form method=\'post\' action=\'index.php\' target=\'_blank\'><TABLE bgcolor=\"#<?php if(isset($_GET['bgcolor']) && !empty($_GET['bgcolor'] )) { $msg = $_GET['bgcolor']; echo $msg ; } ?>\" cellSpacing=0 cellPadding=0 border=0 width=\'100%\' height=\'70\'><TR><TD align=center><font class=\'menua\'><INPUT maxLength=\'200\' size=\'40\' name=\'search\' >&nbsp;&nbsp;<INPUT type=\'submit\' value=\' Rechercher \'><BR></TD></TR></TABLE></form></body></html>
    Je t'en serais reconnaissant.

  19. #19
    Membre actif Avatar de kevinf
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2005
    Messages
    863
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2005
    Messages : 863
    Points : 225
    Points
    225
    Par défaut
    C'est bon j'ai trouvé!

    Merci bien à vous

Discussions similaires

  1. Problème avec mon script php
    Par michou2008 dans le forum Autres langages pour le Web
    Réponses: 0
    Dernier message: 04/05/2014, 01h44
  2. [MySQL] Problème avec mon code PHP
    Par af.zakaria dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 12/04/2012, 17h51
  3. [MySQL] problème avec mon application de recherche php/mysql
    Par cuisto44000 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 05/06/2008, 03h01
  4. [PHP-JS] problème avec mon script de connexion
    Par agencep dans le forum Langage
    Réponses: 5
    Dernier message: 31/01/2008, 17h08
  5. Problème avec mon firewall ...
    Par Wis dans le forum Tomcat et TomEE
    Réponses: 15
    Dernier message: 06/04/2004, 08h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo