Affichage page après script de màj

jltrooz Messages postés 6 Statut Membre -  
jltrooz Messages postés 6 Statut Membre -
Bonjour,
j'ai un problème qui va vous paraître enfantin, mais je ne sais pas comment le résoudre.
1. affichage d'une table (mysql) et la personne peut choisir la ligne à modifier
2. affichage du formulaire avec les différentes éléments de la table et modifiable
3. exécution d'un script qui fait correctement la mise à jour de la table
4. et c'est là que je bloque, affichage d'une page blanche (adresse du fichier script), j'aimerai revenir au point 1.

Ah oui tout cela en php

La solution ?

Merci
A voir également:

1 réponse

macgawel Messages postés 676 Statut Membre 89
 
Bonjour.

On va dire que tu affiches ta table avec AffTable.php, que tu affiches le formulaire dans form.php et que le script de mise à jour s'appelle maj.php :
Dans maj.php, tu n'as que du php.

- Si le traitement est assez long, tu rajoutes :
<?php
// Premières vérifications de base sur les données.
...
// On renvoie sur une page d'erreur en cas de problème
echo '<html><head>';
echo '<meta http-equiv="Refresh" CONTENT="2; URL=AffTable.php" />';
echo '</head><body>';
// Affichage basique, tu peux rajouter une image, genre Sablier...
echo 'Traitement en cours...</body>';
// Le traitement en lui même
...
?>


- Si le traitement est très rapide :
<?php
// Premières vérifications de base sur les données.
...
// On renvoie sur une page d'erreur en cas de problème

// Le traitement en lui même
...
// Et on renvoie sur la page souhaitée
// ATTENTION : la fonction header ne fonctionne pas si on a déjà envoyé quelque chose...
header("location:AffTable.php");
?>
0
jltrooz Messages postés 6 Statut Membre
 
Bonjour,
sur base de ta réponse, mon code me semble correct sauf que je ne sais pas comment corriger quand j'ai le message : Warning: Cannot modify header information - headers already sent by
0
macgawel Messages postés 676 Statut Membre 89 > jltrooz Messages postés 6 Statut Membre
 
Warning: Cannot modify header information - headers already sent by
Ca veut dire que le script a déjà envoyé des informations avent d'envoyer le header('location:...');
Il faudrait voir le script complet et/ou les scripts qu'il appelle par include(...), et le source de la page, ça te donnera peut-être des indications.

Le header('location:...') doit vraiment être la première chose envoyée - avant l'en-tête, et même le DOCTYPE.
0
jltrooz Messages postés 6 Statut Membre > macgawel Messages postés 676 Statut Membre
 
Merci mais j'ai trouvé une solution en passant par le javascript
0