Besoin Aide - Site Immobilier (PHP)

Petit nouveau ! | 1 Messages

03 août 2011, 15:58

Bonjour à tous . Je laisse un message sur ce forum car je débute dans le domaine de création de site internet . Et j'ai besoin d'aide et de conseil pour développer une partie de mon site actuel .

Voila le problème rencontré :

- Dans ma partie Administration j'ai une page modifier.php qui est un formulaire qui récupére les anciennes informations existantes et qui propose de les modifier . Cette page est liée à la page action.php qui est celle si ..
<?php

require("../connect.inc.php");

// On initialise la variable "soumettre".
$Soumettre= '';
if (!empty ($_POST['Soumettre'])) {
$Soumettre = $_POST['Soumettre'];
}
$propriete = '';
if (!empty ($_POST['propriete'])) {
$propriete = $_POST['propriete'];
}
$Err = '';
if (!empty ($_GET['Err'])) {
$Err = $_GET['Err'];
}

$reference = $_POST['reference'];
$intitule = $_POST['intitule'];
$type = $_POST['type'];
$surface = $_POST['surface'];
$terrain = $_POST['terrain'];
$chambres=$_POST['chambres'];
$sallesbains=$_POST['sallesbains'];
$pieces=$_POST['pieces'];
$chauffage=$_POST['chauffage'];
$prix=$_POST['prix'];
$descriptionfr=$_POST['descriptionfr'];
$descriptionen=$_POST['descriptionen'];
$vendu=$_POST['vendu'];

$datedujour=date("Y-m-d");
switch ($Soumettre) {
	case "Enregistrer" :
		echo"<div align='center'><FONT size=4 color='#F7F6B4' face='Arial'><b>Confirmation d'enregistrement</b></font></div>";
		// vérification du numéro de référence
		$Verif="SELECT Reference FROM maison WHERE Reference=$reference";
		$V=mysql_query($Verif);
		while (mysql_num_rows($V)!=0) {
			$reference++;
			$Verif="SELECT Reference FROM maison WHERE Reference=$reference";
			$V=mysql_query($Verif);
			$Err=true;
		};
		if ($Err) {
			echo "<P align=center><img src='../images/attention.gif' align=middle><FONT size=5 color='#FFCB55' face='Arial'><B>Avertissement</B></FONT><BR>
			Le numéro de Référence que vous avez entré existe déjà.<BR>
			Cette maison sera enregistrée sous la référence : <font size='+1'><b>$reference</b></font></P>";
		};
	    // Enregistrement des données
	    $Requete="INSERT maison SET
			Reference=$reference,
	    	Intitule='$intitule',
	        Type='$type'";
		$Requete.=($surface!="")?(", Surface=$surface"):("");
	    $Requete.=($chambres!="")?(", Chambres=$chambres"):("");
	    $Requete.=($pieces!="")?(", Pieces=$pieces"):("");
	    $Requete.=($sallesbains!="")?(", SallesDeBains=$sallesbains"):("");
	    $Requete.=($terrain!="")?(", Terrain=$terrain"):("");
	    $Requete.=($chauffage!="")?(", Chauffage='$chauffage'"):("");
	    $Requete.=($prix!="")?(", Prix='$prix'"):("");
	    $Requete.=($descriptionfr!="")?(", DescriptionFr='$descriptionfr'"):("");
	    $Requete.=($descriptionen!="")?(", DescriptionEn='$descriptionen'"):("");
		for ($i=1; $i<=7; $i++) {
			$Requete.=($photo[$i]!="" && file_exists($photo[$i]))?(", Photo$i='$reference-$i.jpg'"):("");
		};
	    $Requete.=", Vendu='$vendu',
			Date='$datedujour',
			Propriete='$propriete'";
	    $R=mysql_query($Requete);
		if ($R) { 
			echo "Les données ont été enregistrées<BR>"; 
		} else { 
			echo "Une erreur s'est produite lors de l'enregistrement.<br>Veuillez réessayez plus tard<br>";
		};
	    // Transfert des photos
		$ftpconnect=ftp_connect("", );
		if ($ftpconnect) {
			$login=ftp_login($ftpconnect, "", "");
			if ($login) {
				$cdup=ftp_cdup($ftpconnect);
				if ($cdup) {
					$chdir=ftp_chdir($ftpconnect, "htdocs/photos/");
 					if ($chdir) {
	    				for ($i=1; $i<=7; $i++) {
	    					if ($photo[$i]!="" && file_exists($photo[$i])) {
								// transfert photo i
								$ftpput=ftp_put($ftpconnect, "$reference-$i.jpg", $photo[$i], FTP_BINARY);
								if ($ftpput) {
									echo"&nbsp;&nbsp;&nbsp; - Tranfert de la photo $i effectué<BR>";
								} else {
									echo "Erreur lors du transfert de la photo $i<br>";
								};
							};
						};
					} else { echo "Erreur changement de repertoire<br>"; };
				} else { echo "Erreur de Repertoire racine<br>"; };
			} else { echo "Erreur de login<br>"; };
		} else { echo "Erreur de connexion<br>"; };
		$ftpdeconnect=ftp_quit($ftpconnect);
		echo"<A href='liste.php?propriete=$propriete'>Retour à la liste</A><br>";
		break;
	case "Modifier" :
		echo"<div align='center'><FONT size=4 color='#F7F6B4' face='Arial'><b>Confirmation de modification</b></font></div>";
		// Modification des données
	    $Requete="UPDATE maison SET
	        Intitule='$intitule',
	        Type='$type'";
		$Requete.=($surface!="")?(", Surface=$surface"):("");
	    $Requete.=($chambres!="")?(", Chambres=$chambres"):("");
	    $Requete.=($pieces!="")?(", Pieces=$pieces"):("");
	    $Requete.=($sallesbains!="")?(", SallesDeBains=$sallesbains"):("");
	    $Requete.=($terrain!="")?(", Terrain=$terrain"):("");
	    $Requete.=($chauffage!="")?(", Chauffage='$chauffage'"):("");
	    $Requete.=($prix!="")?(", Prix='$prix'"):("");
	    $Requete.=($descriptionfr!="")?(", DescriptionFr='$descriptionfr'"):("");
	    $Requete.=($descriptionen!="")?(", DescriptionEn='$descriptionen'"):("");
		for ($i=1; $i<=7; $i++) {
			if ($supphoto[$i]=="ok") {
				$Requete.=", Photo$i=''";
			} else {
				$Requete.=($photo[$i]!="" && file_exists($photo[$i]))?(", Photo$i='$reference-$i.jpg'"):("");
			};
		};
	    $Requete.=", Vendu='$vendu',
			Date='$datedujour',
			Propriete='$propriete' WHERE Reference=$reference";
	    $R=mysql_query($Requete);
		if ($R) {
			echo "Les modifications ont été enregistrées<BR>";
		} else { 
			echo "Une erreur s'est produite lors de la modification.<br>Veuillez réessayez plus tard<br>";
		};
		// Transfert des photos
		$ftpconnect=ftp_connect("", );
	    if ($ftpconnect) {
			$login=ftp_login($ftpconnect, "", "");
			if ($login) {
				$cdup=ftp_cdup($ftpconnect);
				if ($cdup) {
					$chdir=ftp_chdir($ftpconnect, "htdocs/photos/");
 					if ($chdir) {
	    				for ($i=1; $i<=7; $i++) {
							// verification si il y a eu demande de suppression
							if ($supphoto[$i]=="ok") {
								// suppression du fichier
								$ftpdel=ftp_delete($ftpconnect, "$reference-$i.jpg");
								if ($ftpdel) {
									echo"&nbsp;&nbsp;&nbsp; - Photo $i Supprimée<BR>";
								} else {
									echo"&nbsp;&nbsp;&nbsp; - Erreur de suppression de la Photo $i";
								};
								
							} else {
								// Transfert des fichiers à modifier
	    						if ($photo[$i]!="" && file_exists($photo[$i])) {
									// transfert photo i
									$ftpput=ftp_put($ftpconnect, "$reference-$i.jpg", $photo[$i], FTP_BINARY);
									if ($ftpput) {
										echo"&nbsp;&nbsp;&nbsp; - Tranfert de la photo $i effectué<BR>";
									} else {
										echo "&nbsp;&nbsp;&nbsp; - Erreur lors du transfert de la photo $i<br>";
									};
								};
							};
						};
					} else { echo "Erreur changement de repertoire<br>"; };
				} else { echo "Erreur de Repertoire racine<br>"; };
			} else { echo "Erreur de login<br>"; };
		} else { echo "Erreur de connexion<br>"; };
		$ftpdeconnect=ftp_quit($ftpconnect);
		echo"<A href='liste.php?propriete=$propriete'>Retour à la liste</A><br>";
		break;
};
require("../deconnect.inc.php");
?>
Le problème rencontré est le suivant :
Notice: Undefined variable: photo in C:\Program Files (x86)\EasyPHP-5.3.6.0\www\SITE ERIC BEAUME (Agence Immo) - Juillet 2011\htdocs\admin\action.php on line 131

Notice: Undefined variable: supphoto in C:\Program Files (x86)\EasyPHP-5.3.6.0\www\SITE ERIC BEAUME (Agence Immo) - Juillet 2011\htdocs\admin\action.php on line 128

Notice: Undefined variable: photo in C:\Program Files (x86)\EasyPHP-5.3.6.0\www\SITE ERIC BEAUME (Agence Immo) - Juillet 2011\htdocs\admin\action.php on line 131

Notice: Undefined variable: supphoto in C:\Program Files (x86)\EasyPHP-5.3.6.0\www\SITE ERIC BEAUME (Agence Immo) - Juillet 2011\htdocs\admin\action.php on line 128

Notice: Undefined variable: photo in C:\Program Files (x86)\EasyPHP-5.3.6.0\www\SITE ERIC BEAUME (Agence Immo) - Juillet 2011\htdocs\admin\action.php on line 131

Notice: Undefined variable: supphoto in C:\Program Files (x86)\EasyPHP-5.3.6.0\www\SITE ERIC BEAUME (Agence Immo) - Juillet 2011\htdocs\admin\action.php on line 128

Notice: Undefined variable: photo in C:\Program Files (x86)\EasyPHP-5.3.6.0\www\SITE ERIC BEAUME (Agence Immo) - Juillet 2011\htdocs\admin\action.php on line 131
Les modifications ont été enregistrées
Je pense avoir donné les informations nécessaire, si il manque quoi que ce soit je le posterai ensuite .
Merci de votre attention. J’espère pouvoir trouver une réponse rapidement.

Petit nouveau ! | 2 Messages

05 août 2011, 10:03

Le problème semble venir de ces lignes (la numérotation aurait été pas mal) :
if ($supphoto[$i]=="ok") {
$Requete.=", Photo$i=''";
} else {
$Requete.=($photo[$i]!="" && file_exists($photo[$i]))?(", Photo$i='$reference-$i.jpg'"):("");
};
Visiblement les variables "supphoto" et "photo" n'existent pas. Ne connaissant pas le reste de ton code, une correction serait :
if (isset($supphoto) && isset($supphoto[$i]) && $supphoto[$i]=="ok") {
       $Requete.=", Photo$i=''";
} elseif (isset($photo) && isset($photo[$i])) {
       $Requete.=($photo[$i]!="" && file_exists($photo[$i]))?(", Photo$i='$reference-$i.jpg'"):("");
 };
En espérant avoir résolu ton problème.

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

24 août 2011, 14:36

Modération :
Afin d'obtenir plus de réponses, le sujet a été déplacé dans un forum plus approprié.

Merci de prendre le temps de lire les règlements
ainsi que l'intitulé de chaque forum avant de poster un nouveau sujet.
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.