Forum d'entraide PHPFrance

Venez poser vos questions PHP, MySQL, HTML, CSS, Javascript, Gestion de serveurs à la communauté PHPfrance

Vers le contenu

» Masquer les résultats de la recherche

Recherche dynamique PHPfrance

  1. Effectuez une recherche, les résultats s'afficheront dynamiquement ici.

Rafraîchir page PHP après envoi formulaire ?

Pour ceux qui débutent en PHP.

Rafraîchir page PHP après envoi formulaire ?

Messagepar beninsky 14 Fév 2009, 11:16

Bonjour j'ai un problème tout bête mais que je n'arrive pas à le résoudre.

J'aimerai afficher le numéro d'ID de la dernière entrée de ma base de donnée sur la même page qu'un formulaire qui sert à entrer des données dans la base de données et qui renvoie vers lui même.

J'arrive à insérer des données dans la BDD une fois le formulaire envoyé mais le numéro ne se rafraîchit pas à moins que l'utilisateur appuie sur F5, quelle serai la meilleur solution selon vous pour rafraichir ce numéro ?
beninsky
Maitre du phpinfo()
 
Messages: 28
Inscription: 25 Sep 2008, 10:39

Messagepar lux 14 Fév 2009, 11:35

Avec la fonction header après insertion en bdd ? :wink:
lux
Eléphanteau
 
Messages: 372
Inscription: 08 Sep 2006, 18:20
Localisation: Luxembourg - Lille

Messagepar beninsky 14 Fév 2009, 12:26

J'avais déjà essayé cette méthode et ca me renvoie cette erreur :
Warning: Cannot modify header information - headers already sent by (output started at F:\addrelease.php:63) in F:\addrelease.php on line 147


Je pense que c'est parce qu'il y a déjà une méthode de ce type envoyé par le formulaire quand je le valide.

J'ai déjà essayé pas mal de méthode là et je sèche vraiment :S
beninsky
Maitre du phpinfo()
 
Messages: 28
Inscription: 25 Sep 2008, 10:39

Messagepar lux 14 Fév 2009, 12:40

Erreur typique. Ça veut dire que tu as fait un "echo, print_r, var_dump" ou écrit quoi que ce soit avant la redirection.

On peut voir ton script ? :wink:
lux
Eléphanteau
 
Messages: 372
Inscription: 08 Sep 2006, 18:20
Localisation: Luxembourg - Lille

Messagepar beninsky 14 Fév 2009, 12:49

Voici le code raccourci de ma page addrelease.php :

Syntaxe: [ Télécharger ] [ Masquer ]
Code php
<?php

mysql_connect("localhost", "root", "xxx"); // Connect to database

mysql_select_db("movedb"); // Database selection



$getlastentry = mysql_query ("SELECT Audio_ID FROM lossless ORDER BY Audio_ID DESC LIMIT 0, 1");

$last = mysql_fetch_array($getlastentry);

$nextid = $last&#91;'Audio_ID'&#93;+1;

?>



<form name="form" action="addrelease.php" method="POST">

<table>

echo $nextid; // nombre que je veux afficher et qui dois changer après la validation du formulaire

formulaire....

</table>



<div class="bouton"><input type="submit" name="addrelease" value = "Addrelease"  class = "submit"/></div>

</form>



<?php

if (isset($_POST&#91;'addrelease'&#93;) && $_POST&#91;'addrelease'&#93; == 'Addrelease')

{

// Vérification et insertion données dans BDD...

header('Location: addrelease.php');

}

 
beninsky
Maitre du phpinfo()
 
Messages: 28
Inscription: 25 Sep 2008, 10:39

Messagepar lux 14 Fév 2009, 12:51

Tu n'as pas le droit de faire de header après avoir écrit du html, d'ou l'erreur.

Mets la partie "traitement php" en haut de ta page, ça devrait aller mieux :
Syntaxe: [ Télécharger ] [ Masquer ]
Code php
<?php

if (isset($_POST&#91;'addrelease'&#93;) && $_POST&#91;'addrelease'&#93; == 'Addrelease')

{

// Vérification et insertion données dans BDD...

header('Location: addrelease.php');

}
lux
Eléphanteau
 
Messages: 372
Inscription: 08 Sep 2006, 18:20
Localisation: Luxembourg - Lille

Messagepar beninsky 14 Fév 2009, 12:55

Merci infiniment ca marche nikel!!

Ca faisait un moment que je galérais la dessus et vu que je débute en PHP au moins ca m'aura servi de leçon pour la prochaine fois ^^

Par contre cette méthode marche que sur Firefox et pas sur IE, IE 7 m'indique quand je valide :
Internet Explorer ne peut pas afficher cette page Web


Est-ce normal ?

Solution trouvé :

Au lieu de
Syntaxe: [ Télécharger ] [ Masquer ]
Code php
header('Location: addrelease.php');


Mettre :
Syntaxe: [ Télécharger ] [ Masquer ]
Code php
header("Refresh: 0;url=addrelease.php");


Encore une fois merci !
beninsky
Maitre du phpinfo()
 
Messages: 28
Inscription: 25 Sep 2008, 10:39


Retourner vers PHP débutant

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 10 invités