Executer un script php sans changer de page

Fermé
halbux - 29 sept. 2009 à 17:45
 Anonyme - 11 mai 2013 à 22:23
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 mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 193
29 sept. 2009 à 17:50
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 19249 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 15 juin 2024 4 505
29 sept. 2009 à 17:49
AJAX ...
Recherche et tu trouveras de nombreux tutoriels.
0
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 mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 193
30 sept. 2009 à 09:23
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 jeudi 7 juin 2007 Statut Membre Dernière intervention 18 octobre 2015 100
29 sept. 2009 à 21:07
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 samedi 26 septembre 2009 Statut Membre Dernière intervention 6 janvier 2011 3
30 sept. 2009 à 13:55
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
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 samedi 26 septembre 2009 Statut Membre Dernière intervention 6 janvier 2011 3
29 sept. 2009 à 17:49
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