Injection sql ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Injection sql ?

Re: Injection sql ?

par tof73 » 02 févr. 2018, 08:29

http://php.net/manual/fr/function.htmlspecialchars.php
indispensable à l'affichage pour tout contenu soumis par un utilisateur.

Injection sql ?

par yoann38 » 02 févr. 2018, 08:12

Salut à tous.
Je vois qu'un script automatique ou un petit malin s'amuse à me pourrir mon contenu.
Je change régulièrement quasi tous les jours le contenu de ma colonne description.
Le petit malin en question s'amuse à rajouter dans chacune de me description ceci :
<script>window.location.reload()</script> ( ma page charge en permanence en gros )

Je pense donc à une faille de mon côté et je voudrais savoir comment sécurisé par exemple le champ de mon formulaire:

Vérification
<?php
   //Verification description
  if(empty($_POST['description']))
  {
   $erreurs['description'] = 'Renseigner une description';
  }
?>
Requete:
// requete INSERT ....
	   $req = $bdd->prepare('INSERT INTO loisirs ( id_simply_user,description) VALUES (:id_simply_user, :description)');   
	   $retour= $req->execute(array(
	   
	   		  'id_simply_user'=>$id,
			  'description'=>$_POST['description']
			   ));
			  $idloisirs = $bdd->lastInsertId();
			  
			  unset($_POST);
Formulaire:
<label>Détail de votre sortie</label>
<textarea class="form-control" rows="5" name="description"><?php echo !empty($_POST['description']) ? $_POST['description'] : NULL; ?></textarea>
<?php echo !empty($erreurs['description']) ? '<div class="alert alert-danger" role="alert"><i class="fa fa-exclamation-triangle"></i>' .$erreurs['description'].'</div>' : NULL;?>