Executer un script php sans changer de page

halbux -  
 Anonyme -
Bonjour,
Lors de l'execution d'un script php, qui marche, firefox ouvre une nouvelle page... blanche au lieu de rester sur la page à partir de laquelle le script à été lancé.
voici la partie intéressante du code html:

<form method="post" action="phpinserttext.php">

<div align="center"><TEXTAREA Rows=9 Cols=60 name="text">Leave here your message...</TEXTAREA></div><br>

<div align="center"><input type="submit" value="Submit"></div>

(lamp/ubuntu server)

Comment faire pour rester sur la première page?

Merci d'avance
Configuration: Linux Fedora
Firefox 3.5.3

7 réponses

  1. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
     
    en faisant ca:
    <form method="post" action="">
    par contre il faut que la page sur laquelle tu mets le forlulaire traite le formulaire (a la limite elle peut include "phpinserttext.php".

    la page va etre rechargée, mais avec la meme tete (ou différente si des modifs sont faites grace au formulaire)

    si tu ne veux pas qu'il y ai de rechargement du tout, il faut faire ton envoi de formulaire en javascript, en utilisant par exemple la technique de programmation AJAX
    3
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    AJAX ...
    Recherche et tu trouveras de nombreux tutoriels.
    0
  3. halbux
     
    je suis encore débutant :-)

    "Sur cette ligne, prends l'atribut 'action' et modifie la valeur avec la page que tu veux afficher a l'envoi du formulaire !"

    ...et comment je fais pour executer le script php?

    merci pour les réponses
    0
    1. Nabla's Messages postés 18201 Date d'inscription   Statut Contributeur Dernière intervention   3 228
       
      le script php est ececuté au moment ou tu demandes de lire uen page php.
      poru cela, il faut bien entendu avoir installé un serveur easyphp ou wamp par exemple, et y avoir placé ton site dans un sous répertoire de www
      il sera accessible via http://localhost

      quand tu vois ta page blanche, c'est ta page php! c'est juste que pour l'isntant elle doit faire du traitement, mais qu'elle n'affiche rien.
      si tu nous donnais son code, on pourrait lui faire afficher quelque chose !
      0
  4. frippons Messages postés 572 Statut Membre 104
     
    Un script php s'excécute depuis le serveur il faut quelque chose qui l'amorce. Par exemple un bouton.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Anonyme
     
    dans un fichier php

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Document sans titre</title>
    </head>
    <body>
    <?php
    if(isset($_POST['text']) && !empty($_POST['text']))
    {
    $text = htmlentities($_POST['text']);
    echo 'Message: ' . $text . '<br> Merci';
    }
    ?>
    <form method="post" action="" target="_self">

    <textarea rows="9" cols="60" name="text" placeholder="Type your message here..."></textarea><br>

    <input type="submit" value="Submit">

    </form>

    </body>
    </html>

    Voila pour la base. Si tu veux ensuite externaliser le php il suffit de couper/coller

    $text= htmlentities($_POST['text']);
    echo 'Message: ' . $text. '<br> Merci';

    dans un fichier traitement_message.php

    donc la condition dans le premier fichier devient

    if(isset($_POST['text']) && !empty($_POST['text']))
    {
    include_once('traitement_message.php');
    }
    0
  7. m!xou Messages postés 135 Statut Membre 3
     
    Facile:

    <form method="post" action="phpinserttext.php">

    Sur cette ligne, prends l'atribut 'action' et modifie la valeur avec la page que tu veux afficher a l'envoi du formulaire !
    -1