Pb php

Résolu/Fermé
societeserieuse Messages postés 172 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 3 décembre 2008 - 16 nov. 2008 à 10:00
societeserieuse Messages postés 172 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 3 décembre 2008 - 16 nov. 2008 à 19:03
Bonjour, mon problème est le suivant :
J'ai une page qui doit traité une demande devis l enregistré ds une base et envoyé 2mail
pourtant rien ne ce psse et je n'ai aucune erreur :s
j'ai mis des else a chaque condition mais rien ne sort ....

voici le pavé de code :p

<?php
if(!empty($_POST['nom']) && !empty($_POST['prenom']) && !empty($_POST['adresse']) && !empty($_POST['cp']) && !empty($_POST['ville']) && !empty($_POST['url']))
{
if(session_is_registered("creation"))
{
if(!empty($_SESSION['creation']))
{

$argent_creation = htmlentities($_SESSION['argentcrea']);
$creation = html_entity_decode($_SESSION['creation'])."<br />";
if(!empty($_SESSION['argentanim']) && !empty($_SESSION['animationflash']))
{
$argent_animation_flash = htmlentities($_SESSION['argentanim']);
$animation_flash = html_entity_decode($_SESSION['animationflash'])."<br />";
}
else
{
$argent_animation_flash ='';
$animation_flash = '';
}
if(!empty($_SESSION['argentintro']) && !empty($_SESSION['introductionflash']))
{
$argent_intro_flash = htmlentities($_SESSION['argentintro']);
$introflash = html_entity_decode($_SESSION['introductionflash'])."<br />";
}
else
{
$argent_intro_flash ='';
$introflash = '';
}
if(!empty($_SESSION['argentforum']) && !empty($_SESSION['instalforum']))
{
$argent_forum = htmlentities($_SESSION['argentforum']);
$forum = html_entity_decode($_SESSION['instalforum'])."<br />";
}
else
{
$argent_forum ='';
$forum = '';
}
if(!empty($_SESSION['argentnewletter']) && !empty($_SESSION['newletter']))
{
$argent_newletter = htmlentities($_SESSION['argentnewletter']);
$newletter = html_entity_decode($_SESSION['newletter'])."<br />";
}
else
{
$argent_newletter='';
$newletter = '';
}
if(!empty($_SESSION['argentdnewletter']) && !empty($_SESSION['dnewletter']))
{
$argent_web_newletter = htmlentities($_SESSION['argentdnewletter']);
$web_newletter = html_entity_decode($_SESSION['dnewletter'])."<br />";
}
else
{
$argent_web_newletter='';
$web_newletter = '';
}
if(!empty($_SESSION['argentnews']) && !empty($_SESSION['news']))
{
$argent_news = htmlentities($_SESSION['argentnews']);
$news = html_entity_decode($_SESSION['news'])."<br />";
}
else
{
$argent_news='';
$news = '';
}
if(!empty($_SESSION['argentcommentaire']) && !empty($_SESSION['commentaire']))
{
$argent_commentaire = htmlentities($_SESSION['argentcommentaire']);
$commentaire = html_entity_decode($_SESSION['commentaire'])."<br />";
}
else
{
$argent_commentaire='';
$commentaire = '';
}
if(!empty($_SESSION['argentpagesup']))
{
$argent_pages_supplementaire = htmlentities($_SESSION['argentpagesup']);
$nombres_pages_supplementaires = $argent_pages_supplementaire/49;
$nombres_pages_supplementaire = "Vous souhaitez ".$nombres_pages_supplementaires." page(s) supplementaire(s) pour un total de : ".$argent_pages_supplementaire." €<br />";
}
else
{
$argent_pages_supplementaire='';
$nombres_pages_supplementaire = '';
}
if(!empty($_SESSION['redaction']))
{
$argent_redaction = 50;
$redactions = html_entity_decode($_SESSION['redaction']);
$redaction = $redactions."<br />";
}
else
{
$redaction ='';
}
if(!empty($_POST['tel']) XOR !empty($_POST['email']))
{
if(!empty($_POST['tel']))
{
$telephone = htmlentities($_POST['tel']);
$telephonea = "<br />Téléphone : <strong>".htmlentities($_POST['tel'])."</strong>";
}
else
{
$telephone = '';
$telephonea ='';
}
if(!empty($_POST['email']))
{
$email = htmlentities($_POST['email']);
$emaila = "<br />E-mail : <strong>".htmlentities($_POST['email'])."</strong>";
}
else
{
$email = '';
$emaila ='';
}
$total = $_SESSION['totaux'];
$nom = htmlentities($_POST['nom']);
$prenom = htmlentities($_POST['prenom']);
$adresse = htmlentities($_POST['adresse']);
$ville = htmlentities($_POST['ville']);
$code_postal = htmlentities($_POST['cp']);
$url = htmlentities($_POST['url']);
$subjects = 'Demande de devis d\'un site internet';
$emails = "pdg.webmyjob@gmail.com";
$lf1 = "Demande de devis de : ".$nom." ".$prenom."<br /><br /><strong>Pack commandé :</strong><br />".$creation."<br /><hr /><strong>Les Options :</strong><br />"$animation_flash.$introflash.$forum.$newletter.$web_newletter.$news.$commentaire.$nombres_pages_supplementaire.$redaction."<br /> <hr /><br /><strong>Informations du client :</strong><br />Nom : <strong>".$nom."</strong><br />Prenom : <strong>".$prenom."</strong><br />Adresse : <strong>".$adresse."</strong><br />Code postal : <strong>".$code_postal."</strong><br />Ville :<strong>".$ville."</strong>".$telephonea.$emaila;
@include "connect.php";
if(mysql_query("INSERT INTO devis VALUES('','".$lf1."')"))
{
$headerss .= "MIME-Version: 1.0 \n";
$headerss .= "Content-type: text/html; charset=iso-8859-1 \n";
$headerss .= "from:devis@webmyjob.fr\r\nCc:devis@webmyjob.fr\r\nBcc:devis@webmyjob.fr";
if (mail($emails, $subjects, $lf1, $headerss))
{
if(!empty($email))
{
$lemail1 = str_replace("\r\n", "<br/>", $message);
$lemail = "Chèr(e)".$nom." ".$prenom.',<br />Votre devis nous est bien parvenu . Nous prendrons contact avec vous dans les plus brefs délais.<br />Récapitulatif de votre devis : <br /> <strong>Votre Pack : </strong><br />'.$creation.'<hr /><strong>Vos Options</strong>'.$animation_flash.$introflash.$forum.$newletter.$web_newletter.$news.$commentaire.$nombres_pages_supplementaire.$redaction;
$subject = 'Votre devis sur Web My Job';
$headers .= "MIME-Version: 1.0 \n";
$headers .= "Content-type: text/html; charset=iso-8859-1 \n";
$headers .= "from:contact@webmyjob.fr\r\nCc:contact@webmyjob.fr\r\nBcc:contact@webmyjob.fr";
if (mail($email, $subject, $lemail, $headers))
{
?>
<div class="afficha">Chèr(e) <?php echo $nom.' '.$prenom;?>,<br />Votre Devis nous a bien été envoyé .<br />Nous vous remercions de la confiance que vous nous accordez.</div>
<meta http-equiv="refresh" content="4; url=index.php">
<?php
}
else
{
?>
<div class="afficha">Chèr(e) <?php echo $nom.' '.$prenom;?>,<br />Votre Devis nous a bien été envoyé .<br />Nous vous remercions de la confiance que vous nous accordez.</div>
<meta http-equiv="refresh" content="4; url=index.php">
<?php
}
}
else
{
?>
<div class="afficha">Chèr(e) <?php echo $nom.' '.$prenom;?>,<br />Votre Devis nous a bien été envoyé .<br />Nous vous remercions de la confiance que vous nous accordez.</div>
<meta http-equiv="refresh" content="4; url=index.php">
<?php
}
}
else
{
?>
<script>alert('<?php echo mysql_error();?>');</script>
<?php
}

}
else
{
?>
<script>alert('<?php echo mysql_error();?>');</script>
<?php

}
}

else
{
?>
<script>alert('erreur ici');</script>
<?php
}

}
else
{
?>
<script>alert('session vide');</script>
<?php
}
}
else
{
?>
<script>alert('erreur session');</script>
<?php
}
}
else
{
?>
<script>alert('erreur POST');</script>
<?php
}
?>
A voir également:

6 réponses

Salut...

Pour commencer .... J'espère que tu t'applique plus pour tes site clients que dans tes sites perso...
parce que c'est une blague en optimisation ton script...


Et ça fait pas très pro de demander de l'aide pour un truc tout con quand on voit tes tarifs...
0
societeserieuse Messages postés 172 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 3 décembre 2008 7
16 nov. 2008 à 15:49
loool sympa ton aide je la note :)
et sinon ta quelque chose de constructif à dire à part ca ?
et pour ta governe ceci est un script de test si j ai mis autant de condition c pour trouver mon erreur donc quand on ne sait pas hein ;)
0
Pour commencer,
Page blanche ? ou code erreur ?

ensuite nettoie ton code ... évite l'appel de fonction en double voir triple:

$telephone = htmlentities($_POST['tel']);
$telephonea = "<br />Téléphone : <strong>".htmlentities($_POST['tel'])."</strong>"; 

Le htmlentities 2 fois sur le même POST....

... Fait ton htmlentities avant de passer une valeur en _SESSION[]
$argent_creation = htmlentities($_SESSION['argentcrea']); 


parceque c'est un peu le bronx là ...
0
societeserieuse Messages postés 172 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 3 décembre 2008 7
16 nov. 2008 à 16:07
je te repete que j ai tout remodifier pour trouver l'erreur neanmoins je reste en absense de cette erreur donc je pense refaire completement la page :)
de plus certes que les doublon de htmlentities(); n'optimisent pas la source mais n'empecherai pas le fonctionnement du script donc le pb n'est pas lié
alors à moins que tu trouve la solution au pb dans les 5 minutes je vais refaire cette page et oublié ce pb recurant :)
quand a mes tarifs ils sont justifiés qund je vois que l'on propose des sites qui n'appartiennent qu'au créateur pour 600€ je me dis que les gens preferent payer plus pour etre mieux referencer et avoir une main mise sur un travail qui leur appartient :)
ce point eclairci je trouve quand meme que ton aide est superflu du fait que tes interventions ne servent pas à faire avancer le pb (mm le 2eme message) et sont une perte de tezmps pour moi et les gens qui pourrait avoir le mm pb ...

ce n'est paas à moi de te remettre en question mais demande toi quel utilité peuvent avoir des messages de ce types :)
0
là ou je voulais en venir, c'est de présenter un code un peu plus lisible et ordonner... tu demande de l'aide Ok... mais ton code rebute la moindre personne qui voudrait t'aider... Donc entre professionnel, je te demander simplement de présenter une version un peu plus propre de ton code afin qu'il soit un peu plus facile à appréhender et à déboguer...

A quoi sert ton XOR ici ?
if(!empty($_POST['tel']) XOR !empty($_POST['email'])) 

Xor sert à vérifier qu'une et une seule des conditions est réalisée, essaye avec OR ...

si ton code est en test :
@include "connect.php";
vire le @ ...

à la place du JS alert! met plutot un echo 'Erreur : '.__LINE__;
place 2 ou 3 echo 'Ok:'.__LINE__; aprés chaque if... comme ça tu verra à quelle ligne ça passe ...
0

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

Posez votre question
societeserieuse Messages postés 172 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 3 décembre 2008 7
16 nov. 2008 à 18:10
non xor est ce quil faut ..... puiske c'est soit l un soit l autre pas les 2 .....
et puis relis mon message j y dis que je vais refaire la page donc pas d 'erreur de plus vu mes positions en css ds mon script les echo ne ce voit pas d ou les script js ..... mais merci kan meme en tous cas je reconnais que ce ke j ai posté est un peu chiant mais bon c etait apres avoir tous modifié pour essayé de trouver l erreur donc je ne referai pas cette erreur
en tous cas vu tes reponses "cher collegue" tu n'as pas trouver le probleme non plus :D
0
essaye ça :


<?php
if(!empty($_POST['nom']) && !empty($_POST['prenom']) && !empty($_POST['adresse']) && !empty($_POST['cp']) && !empty($_POST['ville']) && !empty($_POST['url'])){
	if(session_is_registered('creation')){
		if(!empty($_SESSION['creation'])){

			$argent_creation = htmlentities($_SESSION['argentcrea']);
			$creation = html_entity_decode($_SESSION['creation']).'<br />';
			if(!empty($_SESSION['argentanim']) && !empty($_SESSION['animationflash'])){
				$argent_animation_flash = htmlentities($_SESSION['argentanim']);
				$animation_flash = html_entity_decode($_SESSION['animationflash']).'<br />';
			}else{
					$argent_animation_flash ='';
					$animation_flash = '';
			}
			if(!empty($_SESSION['argentintro']) && !empty($_SESSION['introductionflash'])){
				$argent_intro_flash = htmlentities($_SESSION['argentintro']);
				$introflash = html_entity_decode($_SESSION['introductionflash']).'<br />';
			}else{
				$argent_intro_flash ='';
				$introflash = '';
			}
			if(!empty($_SESSION['argentforum']) && !empty($_SESSION['instalforum'])){
				$argent_forum = htmlentities($_SESSION['argentforum']);
				$forum = html_entity_decode($_SESSION['instalforum']).'<br />';
			}else{
				$argent_forum ='';
				$forum = '';
			}
			if(!empty($_SESSION['argentnewletter']) && !empty($_SESSION['newletter'])){
				$argent_newletter = htmlentities($_SESSION['argentnewletter']);
				$newletter = html_entity_decode($_SESSION['newletter']).'<br />';
			}else{
				$argent_newletter='';
				$newletter = '';
			}
			if(!empty($_SESSION['argentdnewletter']) && !empty($_SESSION['dnewletter'])){
				$argent_web_newletter = htmlentities($_SESSION['argentdnewletter']);
				$web_newletter = html_entity_decode($_SESSION['dnewletter']).'<br />';
			}else{
				$argent_web_newletter='';
				$web_newletter = '';
			}
			if(!empty($_SESSION['argentnews']) && !empty($_SESSION['news'])){
				$argent_news = htmlentities($_SESSION['argentnews']);
				$news = html_entity_decode($_SESSION['news']).'<br />';
			}else{
				$argent_news='';
				$news = '';
			}
			if(!empty($_SESSION['argentcommentaire']) && !empty($_SESSION['commentaire'])){
				$argent_commentaire = htmlentities($_SESSION['argentcommentaire']);
				$commentaire = html_entity_decode($_SESSION['commentaire']).'<br />';
			}else{
				$argent_commentaire='';
				$commentaire = '';
			}
			if(!empty($_SESSION['argentpagesup'])){
				$argent_pages_supplementaire = htmlentities($_SESSION['argentpagesup']);
				$nombres_pages_supplementaires = $argent_pages_supplementaire/49;
				$nombres_pages_supplementaire = 'Vous souhaitez '.$nombres_pages_supplementaires.' page(s) supplementaire(s) pour un total de : '.$argent_pages_supplementaire.' €<br />';
			}else{
				$argent_pages_supplementaire='';
				$nombres_pages_supplementaire = '';
			}
			if(!empty($_SESSION['redaction'])){
				$argent_redaction = 50;
				$redactions = html_entity_decode($_SESSION['redaction']);
				$redaction = $redactions.'<br />';
			}else{
				$redaction ='';
			}
			if(!empty($_POST['tel']) XOR !empty($_POST['email'])){
				if(!empty($_POST['tel'])){
					$telephone = htmlentities($_POST['tel']);
					$telephonea = '<br />Téléphone : <strong>'.$telephone.'</strong>';
				}else{
					$telephone = '';
					$telephonea ='';
				}
				if(!empty($_POST['email'])){
					$email = htmlentities($_POST['email']);
					$emaila = '<br />E-mail : <strong>'.$email.'</strong>';
				}else{
					$email = '';
					$emaila ='';
				}
				$total 			= $_SESSION['totaux'];
				$nom 			= htmlentities($_POST['nom']);
				$prenom 		= htmlentities($_POST['prenom']);
				$adresse 		= htmlentities($_POST['adresse']);
				$ville 			= htmlentities($_POST['ville']);
				$code_postal 	= htmlentities($_POST['cp']);
				$url 			= htmlentities($_POST['url']);
				$subjects 		= 'Demande de devis d\'un site internet';
				$emails 		= 'pdg.webmyjob@gmail.com';
				$lf1 			= 'Demande de devis de : '.$nom.' '.$prenom.'<br /><br /><strong>Pack commandé :</strong><br />'.$creation.'<br /><hr /><strong>Les Options :</strong><br />'.$animation_flash.$introflash.$forum.$newletter.$web_newletter.$news.$commentaire.$nombres_pages_supplementaire.$redaction.'<br /> <hr /><br /><strong>Informations du client :</strong><br />Nom : <strong>'.$nom.'</strong><br />Prenom : <strong>'.$prenom.'</strong><br />Adresse : <strong>'.$adresse.'</strong><br />Code postal : <strong>'.$code_postal.'</strong><br />Ville :<strong>'.$ville.'</strong>'.$telephonea.$emaila;
				if (require 'connect.php'){}else{?><script>alert('require deconne ligne 97');</script><?php }
				if(mysql_query("INSERT INTO devis VALUES('','$lf1')")){
					$headerss .= "MIME-Version: 1.0 \n";
					$headerss .= "Content-type: text/html; charset=iso-8859-1 \n";
					$headerss .= "from:devis@webmyjob.fr\r\nCc:devis@webmyjob.fr\r\nBcc:devis@webmyjob.fr";
					if (mail($emails, $subjects, $lf1, $headerss)){
						if(!empty($email)){
							$lemail1 = str_replace("\r\n", "<br/>", $message);
							$lemail = "Chèr(e)".$nom." ".$prenom.",<br />Votre devis nous est bien parvenu . Nous prendrons contact avec vous dans les plus brefs délais.<br />Récapitulatif de votre devis : <br /> <strong>Votre Pack : </strong><br />".$creation."<hr /><strong>Vos Options</strong>".$animation_flash.$introflash.$forum.$newletter.$web_newletter.$news.$commentaire.$nombres_pages_supplementaire.$redaction;
							$subject = "Votre devis sur Web My Job";
							$headers .= "MIME-Version: 1.0 \n";
							$headers .= "Content-type: text/html; charset=iso-8859-1 \n";
							$headers .= "from:contact@webmyjob.fr\r\nCc:contact@webmyjob.fr\r\nBcc:contact@webmyjob.fr";
							if (mail($email, $subject, $lemail, $headers)){ ?>
								<div class="afficha">Chèr(e) <?php echo $nom.' '.$prenom;?>,<br />Votre Devis nous a bien été envoyé .<br />Nous vous remercions de la confiance que vous nous accordez.</div>
								<meta http-equiv="refresh" content="4; url=index.php">
								<?php
							}else{ ?>
								<div class="afficha">Chèr(e) <?php echo $nom.' '.$prenom;?>,<br />Votre Devis nous a bien été envoyé .<br />Nous vous remercions de la confiance que vous nous accordez.</div>
								<meta http-equiv="refresh" content="4; url=index.php">
								<?php
							}
						}else{ ?>
							<div class="afficha">Chèr(e) <?php echo $nom.' '.$prenom;?>,<br />Votre Devis nous a bien été envoyé .<br />Nous vous remercions de la confiance que vous nous accordez.</div>
							<meta http-equiv="refresh" content="4; url=index.php">
							<?php
						}
					}else{ ?>
						<script>alert('<?php echo mysql_error();?>');</script>
						<?php
					}

				}else{ ?>
					<script>alert('<?php echo mysql_error();?>');</script>
					<?php

				}
			}else{ ?>
				<script>alert('Email et tel envoyes ... faut seulement 1 des 2 ... revoir formulaire');</script>
				<?php
			}

		}else{ ?>
			<script>alert('session vide');</script>
			<?php
		}
	}else{ ?>
		<script>alert('erreur session');</script>
		<?php
	}
}else{ ?>
	<script>alert('erreur POST');</script>
	<?php
}
?>


J'ai corriger 2 ou 3 trucs mais à pas eu plus le temps de me penché dessue
0
societeserieuse Messages postés 172 Date d'inscription dimanche 24 août 2008 Statut Membre Dernière intervention 3 décembre 2008 7
16 nov. 2008 à 19:03
erf gentilmais je ne testerait pas du fait que comme signalé dans mes 2 msg precedents je suis en pleine refonte de cette page et don ce script ne me sert pas :) car comme tu l as signalé il n'est pas assez optimisé et de plus ce que tu propose n'est pas en adequation avec ce que j enregistre dans devis2.php bref .... en tous cas je te remercie de ton aide meme si elle n'arrive pas à point nommé :)

(pour info j ai remplacé les if isset et empty par une fonction et prenant le role de registres_global .....

enfin bref merci en tous cas probleme resolu par ........ MOI :)
0