Bonjour,
J'ai réalisé (avec l'aide de "neige" d'ailleurs) un fichier .php permettant d'insérer ou de modifier une table de ma BDD selon un fichier XML régulièrement modifié.
Le souci est que je n'ai toujours pas trouvé le moyen de supprimer les lignes obsolètes de ma table.
<?php
//-------------------------------------------------------------------
//désactiver magic_quotes
if (get_magic_quotes_gpc()) {
$input array(&$_GET, &$_POST, &$_COOKIE, &$_ENV, &$_SERVER);while (list($k,$v) each($input)) {
foreach ($v as $key => $val) {
if (!is_array($val)) {$input[$k][$key] = stripslashes($val);continue;}
$input[] =& $input[$k][$key];}
}
unset($input);}
//-------------------------------------------------------------------
//start--------------------------------------------------------------
session_start();require_once('classes/all_adm_fns.php');//changement du level du raport d'erreur a E_ALL
//pour detecter la plupart des variables non initialisées
error_reporting(E_ALL);//-------------------------------------------------------------------
//--------------------------------------------------------------------
//Verifier si le super admin est connécté
if( !empty($_SESSION['valid_admin']) )
{
$valid_admin = $_SESSION['valid_admin'];}
if( !check_valid_all() )
{
redirect( "index.php" );exit;}
//--------------------------------------------------------------------
//-------------------------------------------------------------------
error_reporting(E_ALL);
mysql_connect('...) or die('Erreur de connexion '.mysql_error());mysql_select_db('...');
//////////////////////Wizzimmo
function prepare_string(SimpleXMLElement $sxe) {
return mysql_real_escape_string(utf8_decode((string) $sxe));
}
if (file_exists('exemple_wizzimmo.xml'))
{
$Agences_xml = simplexml_load_file('exemple_wizzimmo.xml');
foreach ($Agences_xml->Agence as $Agence){print "Nom d'agence : ";
////////////////// Vérification///////////////
var_dump($Agence->CodeAgenceInterne);
print "
\n";
print "N° téléphone: {$Agence->Telephone1_Agence}
\n";
print "email: {$Agence->EMAIL_Agence}
\n";
print "Référence annonce client : {$Agence->Annonce->Reference}
\n";
print "Type d'annonce : {$Agence->Annonce->TypeAnnonce}
\n";
print "Date Modification : {$Agence->Annonce->DateModification}
\n";
print "Code postal : {$Agence->Annonce->CodePostal}
\n";
print "Ville : {$Agence->Annonce->Ville}
\n";
print "titre : {$Agence->Annonce->Titre}
\n";
print "Ann : {$Agence->Annonce->Texte}
\n";
print "Prix : {$Agence->Annonce->Prix}
\n";
print "Surf habitable: {$Agence->Annonce->Surf_Hab}
\n";
print "Nb Pieces : {$Agence->Annonce->NbPieces}
\n";
print "Département : {$Agence->Annonce->CodePostal}
\n";
print "Les photos :
\n";
var_dump($Agence->Annonce->URL_Photo);
print "
\n";
var_dump($Agence->Annonce->URL_Photo[1]);
print "
\n";
var_dump($Agence->Annonce->URL_Photo[2]);
print "
\n";
var_dump($Agence->Annonce->URL_Photo[3]);
print "
\n";
var_dump($Agence->Annonce->URL_Photo[4]);
print "
\n";
////////////////// Vérification///////////////
///////////////////Spécificité catégories ////////////////////////////////
if((string)$Agence->Annonce->TypeAnnonce == "VENTE" )
{$Typeann= "72";
}
else
{
$Typeann = "71";}
///////////////////////Spécificités constantes///////////////////////////
$password = 'imoconseil201025';
$sta = '2';
$conf = '1';
$val = '1';
$ra ='0';
$re ='1'; ///// à voir plus tard
$time = time();
$ipadresse = '79.91.192.30'; ///// à voir plus tard
$rand = '';
///////////////////////Spécificité tag agence////////////////////////////
$nom = prepare_string($Agence->CodeAgenceInterne);
$telag = (string)$Agence->Telephone1_Agence;
$mail = prepare_string($Agence->EMAIL_Agence);
///////////////////////Spécificité tag agence->annonce///////////////////
$ref = (string)$Agence->Annonce->Reference;
$vil = prepare_string($Agence->Annonce->Ville);
$cod = (string)$Agence->Annonce->CodePostal;
$de = (string)$Agence->Annonce->CodePostal;
$titre = prepare_string($Agence->Annonce->Titre);
$desc = prepare_string($Agence->Annonce->Texte);
$pri = (string)$Agence->Annonce->Prix;
$surf = (string)$Agence->Annonce->Surf_Hab;
$nbpiece = (string)$Agence->Annonce->NbPieces;
$pho1 = (string)$Agence->Annonce->URL_Photo;
$pho2 = (string)$Agence->Annonce->URL_Photo[1];
$pho3 = (string)$Agence->Annonce->URL_Photo[2];
$pho4 = (string)$Agence->Annonce->URL_Photo[3];
$pho5 = (string)$Agence->Annonce->URL_Photo[4];
/////////////////////// Mysql annonces ////////////////////////////
$sql1 "SELECT ref_annonce_client, soc_nom FROM annonces WHERE ref_annonce_client '$ref'";
$query1 = @mysql_query($sql1);
$result1 = result_to_array($query1,2);
////////////////////vérification
print "
\n";
echo "Ref : ".$result1[0][0];
print "
\n";
echo "Nom : ".$result1[0][1];
print "
\n";
print "
<hr />\n";
////////////////////Fin vérification
if( ($result1[0][0] == $ref) && ($result1[0][1] == $nom) )
{
mysql_query("UPDATE annonces SET id_reg='$re', id_dep=LEFT('$de',2), id_cat='$Typeann', email='$mail', ville='$vil', code_pos='$cod', status='$sta', soc_nom='$nom', nom='$nom', tel='$telag', titre='$titre', radio='$ra', ann='$desc', prix='$pri', Surface='$surf', Piéces='$nbpiece', random_code='$rand', confirm='$conf', valid='$val', url_pho1='$pho1', url_pho2='$pho2' ,url_pho3='$pho3' , url_pho4='$pho4', url_pho5='$pho5' WHERE ref_annonce_client='$ref' AND nom='$nom'");
}
else
{
mysql_query("INSERT INTO annonces (ref_annonce_client, id_reg, id_dep, id_cat, email, password, ville, code_pos, status, soc_nom, soc_siren, type, nom, tel, titre, radio, ann, prix, Kilométrage, Année_Modéle, Cylindrée, Surface, Piéces, Capacité, random_code, confirm, valid, date, tel_cache, ip, url_pho1, url_pho2 ,url_pho3 , url_pho4, url_pho5 )VALUES('$ref', '$re', LEFT('$de',2), '$Typeann', '$mail ', '$password', '$vil', '$cod', '$sta', '$nom', '', '1', '$nom', '$telag', '$titre', '$ra', '$desc', '$pri', '', '', '', '$surf', '$nbpiece', '', '$rand', '$conf', '$val', '$time', 'N', '$ipadresse', '$pho1', '$pho2', '$pho3', '$pho4', '$pho5')")
or die("Erreur MySQL : ".mysql_error());
}
/////////////////////// FIN Mysql annonces ////////////////////////////
} //////////////fin foreach
} //////////////fin file_exist
else
{
exit('Echec lors de l\'ouverture du fichier XML.');
}
?>
Afficher la suite