Sécurisé ?

Il y a 425 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici
Ajouter une réponse



 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet : Sécurisé ?
 
Plus d'informations

Bonjour à tous,
Je viens de créer un livre d'or : http://www.tpe-heliocentrisme.fr/Annexe2/livredor.php

J'aurai souhaité savoir si mon livre d'or est sécurisé et comment je pourrais l'amélioré.

Merci de vos réponses !

zeb
Profil : Modérateur libre
Plus d'informations

Habile technique pour mieux référencer ton site.

Si tu as des questions précises, n'hésite pas à les poser.


Message édité par zeb le 21-02-2007 à 15:03:03
G.M.G.V.S.O.
Profil : Modo matériel
Plus d'informations

Fait voir le fichier source :o


---------------
SPAM & WAREZ = Ban!
Ultimate Boot CD | Memtest+
Mon bar préféré à Lyon ! | Bijoux Fantaisie de Créateur !
Plus d'informations

Voici le code de la page livredor.php :
<?php
mysql_connect("localhost", "*****", "********" ); //on se connecte
mysql_select_db("tpe" );

$retour = mysql_query("SELECT COUNT(*) AS totalDesMessages FROM livreor" ); //on compte le nombre d'entrée
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['totalDesMessages'];
$nombreDeMessagesParPage = 20; //c'est le nombre de messages qu'il y aura sur chaque page

$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage); //on calcul le nombre de page et on arrondit à l'unité supérieur
$boucle = 1;


echo 'Nombre de messages : ' . $totalDesMessages . ' <br />';

echo 'Pages : '; //on affiche les N° des pages
while ( $boucle <= $nombreDePages) //on fait une boucle pour les différentes pages
{
echo '<a href="livredor.php?page=' . $boucle . '">' . $boucle . '</a> - ';
echo ' ';
$boucle++;
}

echo '<br /><br /></div>';


if ( isset($_GET['page']) )
{
$page = intval($_GET['page']);
}

else
{
$page = 1;
}

$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

while ($donnees = mysql_fetch_array($reponse))
{
echo '<table><tr class="ligne1"><td><em>Posté par </em>' . $donnees['pseudo'] . ' <em>le </em>' . $donnees['date'] . '</td>';
echo '<td class="note"><em>Note : </em>' . $donnees['note'] . '</td></tr>';
echo '<tr><td colspan="2"><em>Message : </em>' . $donnees['message'] . '</td></tr></table><br /><br />';
}

mysql_close ();

?>

Voici le code de la page livredor1.php :
<?php
if ( isset($_GET['pseudo']) AND isset($_GET['message']) ) //on vérifie si on a bien entrer qqch, si oui on continu
{
if ( $_GET['pseudo'] != NULL AND $_GET['message'] != NULL )
{
$pseudo = htmlentities($_GET['pseudo'], ENT_QUOTES); //contre les méchant !
$message = htmlentities($_GET['message'], ENT_QUOTES);
$message = stripslashes(nl2br($message));
$note = $_GET['note'];
$date = date ("d/m/Y à H:i" );

mysql_connect("localhost", "*****", "*********" ); //on se connecte à notre base de données
mysql_select_db("tpe" );

mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "', '" . $note . "', '" . date("Y/m/d H:i:s" ) . "')" ); //on ajoute une entrée

mysql_close ();
?>
<table>
<tr>
<td class="vert">
Votre message a bien été ajouté au livre d'or.<br />
Vous allez être redirigés dans 2 secondes.
<SCRIPT LANGUAGE="JavaScript">
function redirect() {
window.location="livredor.php"
}
setTimeout("redirect()",2000); // delai en millisecondes
</SCRIPT>
</td>
</tr>
</table>

<?php
}
}

if ( $_GET['pseudo'] == NULL OR $_GET['message'] == NULL )
{
?>

<table>
<tr>
<td class="rouge">
Vous devez remplir tous les champs du formulaire !<br /><br /><br />Vous allez être redirigés dans 2 secondes.
<SCRIPT LANGUAGE="JavaScript">
function redirect() {
window.location="livredor.php"
}
setTimeout("redirect()",2000); // delai en millisecondes
</SCRIPT>
</td>
</tr>
</table>
<?php
}
?>

zeb
Profil : Modérateur libre
Plus d'informations

BALISE CODE !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

G.M.G.V.S.O.
Profil : Modo matériel
Plus d'informations

Tu fait ça:

Code :
  1. $note = $_GET['note'];



Sans verifier son existence avant.


---------------
SPAM & WAREZ = Ban!
Ultimate Boot CD | Memtest+
Mon bar préféré à Lyon ! | Bijoux Fantaisie de Créateur !
Plus d'informations

ce que bveux dire boubpopsyteam c'est de faire ... :

Code :
  1. if(isset($_GET['note']))
  2.       {
  3.       $note = $_GET['note'];
  4.       }


Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

Non, le mieux est de remplacer isset par array_key_exists

Code :
  1. if(array_key_exists('note', $_POST)) {...}


---------------
.: La Pipicy Team :love: :.
Plus d'informations

Ca changera quoi au niveau de son utilisation ?

Je me la pête
Profil : /!\ Docteur - PDG
Plus d'informations

Rien, si ce n'est que isset n'est pas toujours reconnu...


---------------
.: La Pipicy Team :love: :.
Plus d'informations

isset(); existe depuis php2 il est reconnu partout.. Je peux peut etre me tromper mais c'est une fonction que j'utilise très souvent et qui ne m'a jamais causé aucun problèmes, après chacun fais comme il veux ^^, mais je prends note malgré tout :)

G.M.G.V.S.O.
Profil : Modo matériel
Plus d'informations

FAUX.

Ca ne marche pas sur une debian 3.1 config par defaut par exemple :o

array_key_exists rulez :D


---------------
SPAM & WAREZ = Ban!
Ultimate Boot CD | Memtest+
Mon bar préféré à Lyon ! | Bijoux Fantaisie de Créateur !

Aller à :
Ajouter une réponse
 

Annonces Google
Publicité
Les téléchargements