Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
838 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Shout-Box trés basique

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Shout-Box trés basique

n°1587788
_Reggae_
Posté le 17-07-2007 à 17:32:37  profilanswer
 

Salut,
 
Je débute en PHP, et j'ai fait un petit code très simplifié, pour un mini-tchat je voudrai savoir s'il y a des failles à corriger sur ce codes avant de continuer... merci.
 

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
  3.     <head>
  4.         <title>Mini-chat</title>
  5.         <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  6.     </head>
  7.     <style type="text/css">
  8.     form
  9.     {
  10.         text-align:center;
  11.     }
  12.     </style>
  13.     <body>
  14. <?php
  15. if( isset ($_POST['pseudo'])  AND  isset ($_POST['message']) )
  16.     if( $_POST['pseudo'] != NULL  AND  $_POST['message'] != NULL )
  17.     {
  18.     mysql_connect("localhost", "root", "" );
  19.             mysql_select_db("teste" );
  20.     $pseudo = $_POST['pseudo'];
  21.             $message = $_POST['message'];
  22.     mysql_query("INSERT INTO tchat VALUES('', '$pseudo', '$message')" );
  23.     mysql_close();
  24.     }
  25. }
  26. ?>
  27. <form action="tchat.php" method="post">
  28. <p>
  29.     Pseudo : <input type="text" name="pseudo" /><br />
  30.     Message:  <input type="text" name="message" /><br />
  31.     <input type="submit" value="Send" />
  32. </p>
  33. </form>
  34. <?php
  35. mysql_connect("localhost", "root", "" );
  36. mysql_select_db("teste" );
  37. $data= mysql_query("SELECT * FROM tchat ORDER BY ID" );
  38. mysql_close();
  39. while( $arrayData= mysql_fetch_array($data) )
  40. {
  41. ?>
  42. <p><strong><?php echo $arrayData['psd']; ?></strong> : <?php echo $arrayData['msg']; ?></p>
  43. <?php
  44. }
  45. ?>
  46.     </body>
  47. </html>


 
Merci d'avance pour votre aide.


Message édité par _Reggae_ le 17-07-2007 à 18:10:09
mood
Publicité
Posté le 17-07-2007 à 17:32:37  profilanswer
 

n°1587797
darklord
You're welcome
Posté le 17-07-2007 à 17:41:11  profilanswer
 

shout [:rofl2]

n°1587813
Halike
Posté le 17-07-2007 à 18:32:20  profilanswer
 

Bonjour,
ce script n'est absolument pas sécurisé.
Premierement, aucun controle n'est effectué sur les données soumises par l'utilisateur avnt de les insérer dans la base de données. Tu risques donc une attaque par injection SQL.
Deuxiemement, tu ne controle pas non plus ce qui est affiché sur la page. Ainsi, l'utilisateur peut placer du code HTML ou javascript sans probleme sur ta page. Si je ne m'abuse, on appelle cela une faille de type XSS. Par exemple, entre un message du genre:

Code :
  1. <script>alert('Vous avez ete pirate!');</script>


Cet exemple est inoffensif, mais on peut faire bien pire en javascript...
 
Pour combler ces failles, regarde du coté des fonctions addslashes et html_entities
 
Apres, je suis loin d'etre un pro en php (ou autre), donc il y a peut etre (surement :) ) d'autres points faibles...
 
Bon amusement.

n°1587928
$man
Posté le 18-07-2007 à 08:55:51  profilanswer
 

Code :
  1. #
  2. if( isset ($_POST['pseudo'])  AND  isset ($_POST['message']) )
  3.    if( $_POST['pseudo'] != NULL  AND  $_POST['message'] != NULL )
  4.    {


 
-->

Code :
  1. if (!empty($_POST['pseudo']) && !empty($_POST['message']))

?

n°1587960
rufo
Pas me confondre avec Lycos!
Posté le 18-07-2007 à 09:47:55  profilanswer
 

strip_tags() aussi pour sécuriser un peu plus.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Shout-Box trés basique

 

Sujets relatifs
[Résolu] Question basique a propos des WebUserControlProgramation en C (basique)
AIDE TAF POUR ECOLE structure XHTML très urgent[C] Petit soucis de debutant, certainement vraiment tres bete...
[C#] Je cherche un composant graphique très spécialTravail à la chaine très peu pour moi !
[Java Swing] Alignement d'un "Box" component à gauchepetite aide surement très simple pour labview
[scilab] besoin d'un coup de main basiqueProblème très simple mais irésolu
Plus de sujets relatifs à : Shout-Box trés basique


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR