Des anti slashes de trop !

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 : Des anti slashes de trop !

par Invité » 19 oct. 2005, 17:49

:D Bonjour,

Merci pour le tutaux, j'ai réussi à me tirer d'affaire !

@ plus !

par Cyrano » 06 oct. 2005, 18:56

Je suggère une visite sur ce tuto de PHPFrance

par diabolo67 » 06 oct. 2005, 18:53

Si je vois des \ à l'affichage alors en principe je devrai rajouter stripslashes() qui permet de les virer .

Mais lorsque je veux ajouter dans la db mon texte qui possède des ' il n'y as plus d'insertion donc je dois rajouter des addslashes() dans mon code au moment de l'insertion dans la base de donnée.

Donc de faire htmlentities() en plus lors de l'insertion.

Avec ceci htmlentities et addslashes

Mais comment écrire le bout de code sachant que pour insérer dans la base j'utilise ceci :

Code : Tout sélectionner

$text = mysql_escape_string($contenu); $date = mysql_escape_string($formation); $query = "UPDATE groupe3 SET contenu='$text', formation='$date' "; $res = mysql_query($query) or die(mysql_error());
Pour l'affichage au final je vais mettre ceci :

Code : Tout sélectionner

echo '<td align="justify">'.stripslashes(nl2br($data['formation'])).' </td>';
J'aurai besoin d'un peu d'aide pour la syntaxe de htmlentities avec mon bout de code.

Merci

Diabolo

par jeanpierre949 » 06 oct. 2005, 12:52

Salut.
Je te conseille de faire ton tableau en html plutot qu'en php

par Cyrano » 06 oct. 2005, 12:33

Pourrais tu me dire ce qui cloche dans la ligne de code que j'ai ecrit avec stripslashes ?
À première vue rien, il faudrait suivre le code pour voir une éventuelle boulette quelque part :-k

par diabolo67 » 06 oct. 2005, 12:32

Ok je vais étudier sa.
Pourrais tu me dire ce qui cloche dans la ligne de code que j'ai ecrit avec stripslashes ?

diabolo

par Cyrano » 06 oct. 2005, 11:59

par diabolo67 » 06 oct. 2005, 11:57

Merci pour vos réponses,

La ligne de code suivante ne fonctionne pas :
echo '<td align="justify">'.stripslashes(nl2br($data['formation'])).' </td>';
Elle ne permet plus l'insertion de donnée dans la base.
Alors que l'ancienne version fonctionne mais avec les anti-slashes.
echo '<td align="justify">'.nl2br($data['contenu']).' </td>';
Moi je proposerais en complément de passer tes entrées en bdd au htmlentities
Qu'est ce que les htmlentities ?

diabolo

par DocType » 06 oct. 2005, 11:40

Moi je proposerais en complément de passer tes entrées en bdd au htmlentities :wink:

par Cyrano » 06 oct. 2005, 11:20

Utilise un stripslashes:
stripslashes(nl2br($data['formation']))

Des anti slashes de trop !

par diabolo » 06 oct. 2005, 11:13

Bonjour à tous :D

J'ai créer une zone administrateur permettant de mettre à jour une page d'un site pour une association de médecin.

Cette page est divisée en plusieurs parties, car ils sont plusieurs groupes.
Chaque groupe possede sa propre zone administrateur.

Pour le premier et deuxième groupe pas de problème tout fonctionne, pour le troisieme groupe l'affichage comporte plein de anti slash. J'ai pourtant repris le même code pour l'ensemble des groupes en ne modifiant que l'accès à la table de la base.

Voici le code qui affiche le contenu de la base sur le site.C'est le code php pour les trois premiers groupes. Il doit y avoir une différence entre les deux premiers goupes et le troisieme :

1 er groupe ********************************
<?php 
    
   echo '<table border=0 width="99%">'; 
    
   echo '<tr>'; 
   echo '<td align="justify">'.nl2br($data['contenu']).' </td>'; 
   echo '</tr>'."\n"; 

                echo '<tr>'; 
   echo '<td>&nbsp;</td>'; 
   echo '</tr>'."\n"; 

   echo '<tr>'; 
   echo '<td align="justify"><b>Prochaines réunions:</b><br/>'.nl2br($data['formation']).'</td>'; 
   echo '</tr>'."\n"; 
    
   echo '<tr>'; 
   echo '<td>'; 
   echo '<a class="a4" href="mailto:[email protected]?subject=Demande de réferentiel groupe de pairs">Nous écrire</a>'."\n"; 
   echo '</td>'; 
   echo'</tr>'."\n"; 

   echo '</table>'."\n"; 
    
    } 
?>
2 eme groupe **************************************
 <?php 
   echo '<table border=0 width="99%">'; 

   echo '<tr>'; 
   echo '<td align="justify">'.nl2br($data['contenu']).' </td>'; 
   echo '</tr>'."\n"; 

                echo '<tr>'; 
   echo '<td>&nbsp;</td>'; 
   echo '</tr>'."\n"; 

   echo '<tr>'; 
   echo '<td align="justify"><b>Prochaines réunions:</b><br/>'.nl2br($data['formation']).'</td>'; 
   echo '</tr>'."\n"; 
    
   echo '<tr>'; 
   echo '<td>'; 
   echo '<a class="a4" href="#">Nous écrire</a>'."\n"; 
   echo '</td>'; 
   echo'</tr>'."\n"; 

   echo '</table>'."\n"; 

    } 
?>
3eme groupe ***************************************
<?php 
   echo '<table border=0 width="99%">'; 

   echo '<tr>'; 
   echo '<td align="justify">'.nl2br($data['contenu']).' </td>'; 
   echo '</tr>'."\n"; 

                echo '<tr>'; 
   echo '<td>&nbsp;</td>'; 
   echo '</tr>'."\n"; 

   echo '<tr>'; 
   echo '<td align="justify"><b>Prochaines réunions:</b><br/>'.nl2br($data['formation']).'</td>'; 
   echo '</tr>'."\n"; 
    
   echo '<tr>'; 
   echo '<td>'; 
   echo '<a class="a4" href="#">Nous écrire</a>'."\n"; 
   echo '</td>'; 
   echo'</tr>'."\n"; 

   echo '</table>'."\n"; 

    } 
?>
Merci pour votre aide,

diabolo