8795 sujets

Développement web côté serveur, CMS

Pages :
(reprise du message précédent)

Surtout que si je fais un exit() avant le header, et qu'avant le exit() je fasse deux var_dump, un pour la session et un autre pour _post,

j’obtiens le résultat attendu... donc réellement, quand le header s'effectue, il ne garde pas les variable de session...

est ce un rapport avec les cookies ou autres ?
Et en remplaçant :
@session_start();

directement par :
session_start();

qu'est-ce que cela donne ?
Modifié par jytest (07 Jul 2012 - 15:59)
là sa me donne une erreur on me disant que j'ai deja déclarer le session_start()


Je me suis renseigner ce week end, et pas mal de personne ont le même soucis, sa parle de cookie sa parles de SID, sa parle meme de configuration de navigateur ...


La variable de session disparait avec le header...

bah du coup je suis perdu là, toujours pas de solution (pourtant j'en est tester des choses)...
bon j'ai enlever le @ et sa me faisait 2 warning, un pour les cookie un pour le header... du coup et l'erreur venez que j'avais ma session start juste après mon doctype.....

du coup j'ai essayer un milliard de choses, j'ai passer tout mon vendredi et tout mon week end, juste parce que j'ai plavé session start après mon doctype.... je déteste ma vie...


Merci de m'avoir aider en tous cas! merci bcp !!

Cordialement,
.... re-salut...



pendant 2 jours ça a marcher le header... de nouveau sa marche plus, jl'ai pas modifier j'ai rien fait.. sa marche plus et pourtant j'ai tout ce dont tu m'a conseiller...

<?php
@session_start();
ob_start();

require_once ('article_classe.php');

$oArticle = new Article ();


	


if (isset($_POST['InputButtonAjoutAdmin'])){
	//Traitement
	
	$oArticle->fx_addArticle($_POST['NomProduit'],$_POST['image'],$_POST['PrixProduit'],$_POST['TitreProduit'],$_POST['DescriptionProduit'],$_POST['URLDetailProduit'],$_POST['URLPanierProd'],$_POST['RadioProduit']);
	header('Location:../../admin.php');
}



	

if (isset($_POST['InputButtonModifAdmin'])){
	$oArticle->fx_update($_POST['NomProduit'],$_POST['image'],$_POST['PrixProduit'],$_POST['TitreProduit'],$_POST['DescriptionProduit'],$_POST['URLDetailProduit'],$_POST['URLPanierProd'],$_POST['IDProduit'],$_POST['RadioProduit']);
}


if (isset($_GET['idProduit'])){  
	//récupération de la variable d'URL,
	//qui va nous permettre de savoir quel enregistrement modifier
	if (isset($_GET['idProduit'])){
		$_POST['idProduit']=$_GET['idProduit'];
	}
	$oArticle->fx_delete($_POST['idProduit']);
	header('Location:../../index.php');
}
	ob_end_flush();
?>		
	
Hello,

A mon avis, je n'utiliserais déjà pas le "@" devant l'ouverture de session. Ne pas afficher les erreurs quand on est confronté à un problème ça va pas t'aider. Dans la même lignée, affiche donc toutes les erreurs de cette manière :


// Affichage des erreurs
error_reporting();

// Ouverture de session
session_start();

Modifié par Anymah (10 Jul 2012 - 23:59)
Salut, merci de ta réponse et merci de m'aider, j'ai de nouveau trouver la solution.


Mais pour moi il n'y à qu'un seul session_start sans le @ car justement c'est lui le vrai, les autres, le fait de mettre @ me permet de pas avoir de WARNING, sa ne génère pas d'erreur, et si je met pas de @ sa fait des choses bizarres. Smiley smile
JuseN a écrit :
et si je met pas de @ sa fait des choses bizarres. Smiley smile


Quand tu ajoutes un arobase ça fait toujours les mêmes "trucs bizarres", la seule différence c'est que ça cache les messages d'erreurs (mais les erreurs existent toujours). Ce qu'il ne faut bien sûr jamais faire. Il faut corriger les erreurs et non les masquer.
Modifié par jb_gfx (11 Jul 2012 - 16:02)
Pages :