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
A voir également:

7 réponses

Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention   3 193
 
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
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
AJAX ...
Recherche et tu trouveras de nombreux tutoriels.
0
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
Nabla's Messages postés 18203 Date d'inscription   Statut Contributeur Dernière intervention   3 193
 
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
frippons Messages postés 550 Date d'inscription   Statut Membre Dernière intervention   100
 
Un script php s'excécute depuis le serveur il faut quelque chose qui l'amorce. Par exemple un bouton.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
m!xou Messages postés 121 Date d'inscription   Statut Membre Dernière intervention   3
 
Et si tu veux récupérer ce qui a été envoyé dans le formulaire, tu peux utiliser les variables superglobales !

https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/913099-transmettez-des-donnees-avec-les-formulaires

Tu as tout ce qu'il te faut sur les formulaires ici
0
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
m!xou Messages postés 121 Date d'inscription   Statut Membre Dernière intervention   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