addslashes() ou stripslashes()

Eléphant du PHP | 257 Messages

07 avr. 2006, 14:33

eh bien avec mes toutes petites petites connaissances et ma toute petite technique cette phrase envoie les données à la table :oops:

ainsi c'est comme ça :
<?php 
// On commence par récupérer les champs 
$nom       = (isset($_POST['nom']))       ? $_POST['nom']       : ""; 
$nom = addSlashes($nom);
$titre     = (isset($_POST['titre']))     ? $_POST['titre']     : ""; 
$itre = addSlashes($itre);
$adresse   = (isset($_POST['adresse']))   ? $_POST['adresse']   : ""; 
$telephone = (isset($_POST['telephone'])) ? $_POST['telephone'] : ""; 
$fax       = (isset($_POST['fax']))       ? $_POST['fax']       : ""; 
$mail      = (isset($_POST['mail']))      ? $_POST['mail']      : ""; 
$agent1    = (isset($_POST['agent1']))    ? $_POST['agent1']    : ""; 
$mail1     = (isset($_POST['mail1']))     ? $_POST['mail1']     : ""; 
$agent2    = (isset($_POST['agent2']))    ? $_POST['agent2']    : ""; 
$mail2     = (isset($_POST['mail2']))     ? $_POST['mail2']     : ""; 
$agent3    = (isset($_POST['agent3']))    ? $_POST['agent3']    : ""; 
$mail3     = (isset($_POST['mail3']))     ? $_POST['mail3']     : ""; 
$img       = (isset($_POST['img']))       ? $_POST['img']       : ""; 

{ 
$dest_dossier = '/var/www/xxxxxxx/agences/upload/'; 
// utilisez également des slashes sous windows : $dest_dossier  = '/upload/'; 

       // connexion à la base 
$db = mysql_connect('localhost', 'agence', 'xxxx')  or die('Erreur de connexion '.mysql_error()); 
// sélection de la base   
mysql_select_db('agences',$db)  or die('Erreur de selection '.mysql_error()); 
      
    // on écrit la requête sql dans agences_tbl 
    $sql = "INSERT INTO agences_tbl(ID, nom, titre, adresse, telephone,fax, mail, agent1, mail1, agent2, mail2, agent3, mail3) 
VALUES('','$nom','$titre','$adresse','$telephone','$fax','$mail','$agent1','$mail1','$agent2','$mail2','$agent3','$mail3')"; 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 

   // on récupère l'ID qui vient d'être généré 
    $ID = mysql_insert_ID();    
$nomDuFichier = basename($_FILES['img']['name']); // Le nom du fichier d'origine 
$extension = substr($nomDuFichier, strrpos($nomDuFichier, ".")); // tant qu'on y est, on récupère l'extension du fichier (tout ce qui suit le dernier point) 
// on compose le nouveau nom du fichier avec $ID récupéré avec mysql_get_id(), l'extension du fichier initiale, et 
éventuellement un bout de nom choisit (ex: "logo_agence_") : 
$dest_fichier = "logo_agence_" . $ID .  $extension; 

// reste plus qu'à déplacer le fichier comme avant, avec son nouveau nom 
move_uploaded_file($_FILES['img']['tmp_name'], $dest_dossier . $dest_fichier); 

    // on écrit la requête sql dans logo 
$sql = "INSERT INTO logo(ID) VALUES('$ID')"; 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 

// on affiche le résultat pour le visiteur 
    echo '<a href="http://www.xxxx.com/agences/ad_agents.htm">Vos infos on été ajoutées.</a>'; 

mysql_close();  // on ferme la connexion 
    }   
?> 

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

07 avr. 2006, 14:39

eh bien avec mes toutes petites petites connaissances et ma toute petite technique cette phrase envoie les données à la table
Non pas du tout

Je parle bien de ce code là hein :
$nom = (isset($_POST['nom']))       ? $_POST['nom']       : ""; 
Qui veut dire :

SI $_POST['nom'] existe
on met $_POST['nom'] dans $nom
SINON
on met vide "" dans $nom

Tu as regardé le lien vers la FAQ que je t'ai donné ?

Sinon pour le reste du code ça devrait convenir, il suffit que ce soit fait avant la requête

Eléphant du PHP | 257 Messages

07 avr. 2006, 15:02

oui j'ai bien regardé la faq ... :wink:
Bon alors maintenant l'apostrophe a bien été pris en compte ouf

Merci ouckileou pour tes conseils et ton exemple.
:lol: :lol:
Je mets résolu.

:wink: