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

  FORUM HardWare.fr
  Programmation
  PHP

  Récuperation de données

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Récuperation de données

n°983691
frlp
Posté le 16-02-2005 à 16:25:19  profilanswer
 

J'ai un problème de récupération de données sur le code présent:
 
-------------------------------------------
PAGE 1
-------------------------------------------
 
<html>
<head></head>
<body>
<form action="admin_evenements2.php" method="get" name="fichier">
   <p>Date :<br>
    <input type="text" name="date">
   <p>Ev&ecirc;nement :<BR>
    <textarea name="evenement"></textarea>    
   </p>
    <input type="submit" name="Submit" value="Envoyer">
</form>
</body>
</html>
 
-------------------------------------------
PAGE 2
-------------------------------------------
 
Done
<?
include("config_db.php" );
$date = $_GET["date"];
$evenement = $_GET["evenement"];
mysql_query("INSERT INTO evenement(date,message) VALUES('$date','$evenement')" );
?>
 
-------------------------------------------
 
 
l'inscription dans la bdd se fait mais avec les champs vides.
Le probleme doit etre bénin...
 
Merci à vous,
 
frlp

mood
Publicité
Posté le 16-02-2005 à 16:25:19  profilanswer
 

n°983763
sky_strike​r
Posté le 16-02-2005 à 17:10:56  profilanswer
 

frlp a écrit :

J'ai un problème de récupération de données sur le code présent:
 
-------------------------------------------
PAGE 1
-------------------------------------------
 
<html>
<head></head>
<body>
<form action="admin_evenements2.php" method="get" name="fichier">
   <p>Date :<br>
    <input type="text" name="date">
   <p>Ev&ecirc;nement :<BR>
    <textarea name="evenement"></textarea>    
   </p>
    <input type="submit" name="Submit" value="Envoyer">
</form>
</body>
</html>
 
-------------------------------------------
PAGE 2
-------------------------------------------
 
Done
<?
include("config_db.php" );
$date = $_GET["date"];
$evenement = $_GET["evenement"];
mysql_query("INSERT INTO evenement(date,message) VALUES('$date','$evenement')" );
?>
 
-------------------------------------------
 
 
l'inscription dans la bdd se fait mais avec les champs vides.
Le probleme doit etre bénin...
 
Merci à vous,
 
frlp


 
Salut déjà il y a une grosse faille de sécurité dans ton code tu devrais hacher les données avec htmlentities avant de les insérer. Concernant ta requéte regarde déjà le contenu de ton tableau $_GET en faisant print_r($_GET).
tu sauras si ça vient de ta requéte ou de ton formulaire. A mon avis il y a rien dans tes variables cpour ça que ça déconne
 
:-)


Message édité par sky_striker le 16-02-2005 à 17:11:55
n°983768
soju
One shot !
Posté le 16-02-2005 à 17:14:20  profilanswer
 

sky_striker a écrit :

tu devrais hacher les données avec htmlentities avant de les insérer


un addslashes est plus approprié, et attention à la config de magic_quotes_gpc
 

n°983771
sky_strike​r
Posté le 16-02-2005 à 17:16:06  profilanswer
 

soju a écrit :

un addslashes est plus approprié, et attention à la config de magic_quotes_gpc


 
Plus approprié pourquoi ?
 
J'ai lu que la addslashes ne suffisait pas pour avoir un bon niveau de sécurité ...
 
Pk j'en sais rien mais c'est ce que j'ai lu
 
 

n°983782
soju
One shot !
Posté le 16-02-2005 à 17:19:58  profilanswer
 

sky_striker a écrit :

Plus approprié pourquoi ?


tout simplement parce que htmlentities modifie les données entrées par l'utilisateur

n°983784
sky_strike​r
Posté le 16-02-2005 à 17:21:37  profilanswer
 

soju a écrit :

tout simplement parce que htmlentities modifie les données entrées par l'utilisateur


 
 
C'est un peu le but il me semble ... En plus htmlentities est trés facilement reversible ...
 
 

n°983787
soju
One shot !
Posté le 16-02-2005 à 17:24:04  profilanswer
 

sky_striker a écrit :

C'est un peu le but il me semble ... En plus htmlentities est trés facilement reversible ...

même si htmlentities est facilement reversible je pense qu'il est plus logique de mettre dans la base les vrai données, enfin c'est mon avis.
@frlp : desolé pour le hors sujet ;)

n°983790
sky_strike​r
Posté le 16-02-2005 à 17:27:11  profilanswer
 

soju a écrit :

même si htmlentities est facilement reversible je pense qu'il est plus logique de mettre dans la base les vrai données, enfin c'est mon avis.
@frlp : desolé pour le hors sujet ;)


 
 
Je suis d'accord avec toi mais dans ce cas il faut me montrer par A+B que addslashes suffit à assurer un niveau de sécurité suffisant sachant que les navigateurs (IE notament) sont trés permissif sur la syntaxe ...
 
Pour le reste et ne voyant pas le pK je fais confiance aux pros de la sécurité ...
 
:-)
 
Désolé pour le hors sujet

n°983796
soju
One shot !
Posté le 16-02-2005 à 17:33:43  profilanswer
 

pour faire une sql injection il faut réussir à sortir des quote, donc si tu les échappes ya pas de problèmes (et peu importe le navigateur)

n°983800
frlp
Posté le 16-02-2005 à 17:41:25  profilanswer
 

héhé pas de problemes :)
 
Pour le code, c'est la base là, je l'enchérirai aprés mais pour le moment je veux juste que cela marche pour aprés rajouté les sécus et tout le reste.
 
print_r($_GET)     donne          Array ( )
 

mood
Publicité
Posté le 16-02-2005 à 17:41:25  profilanswer
 

n°983819
frlp
Posté le 16-02-2005 à 18:00:42  profilanswer
 

Bon c'est cool, mon code n'est pas pourri :)
 
C'est mon serveur qui est capricieux... Donc quelqu'un peut il me traduire mon code php avec les thermes universels svp ? ou m aguiller.
 
merci

n°983821
sky_strike​r
Posté le 16-02-2005 à 18:02:01  profilanswer
 

soju a écrit :

pour faire une sql injection il faut réussir à sortir des quote, donc si tu les échappes ya pas de problèmes (et peu importe le navigateur)


 
Il n'y a malheureusement pas que des SQL injections ...

n°983823
sky_strike​r
Posté le 16-02-2005 à 18:04:49  profilanswer
 

frlp a écrit :

Bon c'est cool, mon code n'est pas pourri :)
 
C'est mon serveur qui est capricieux... Donc quelqu'un peut il me traduire mon code php avec les thermes universels svp ? ou m aguiller.
 
merci


 
A mon avis le probléme ne vient pas de ton serveur ... Essais d'appeller le script de traitement du formulaire sur la même page (en changeant l'adresse dans le action) et tiens nous au courant du résultat...

n°983824
soju
One shot !
Posté le 16-02-2005 à 18:05:02  profilanswer
 

sky_striker a écrit :

Il n'y a malheureusement pas que des SQL injections ...


tu penses a quoi en particulier ?

n°983832
frlp
Posté le 16-02-2005 à 18:08:54  profilanswer
 

je viens de tester sur free, le meme code, et les variables se récup nikel.
 
Donc je pense au serveur.
 

n°983834
sky_strike​r
Posté le 16-02-2005 à 18:09:15  profilanswer
 

soju a écrit :

tu penses a quoi en particulier ?


 
Sur le principe franchement je suis d'accord avec toi pk faire compliqué qd on peut faire plus simple. Mais d'un autre coté je me dit qu'au pire le HTML est de toute façon plus neutre que du texte. Donc dans ce cadre là je jouons la carte de la prudence.
 
Sinon il y a les injections de script coté client genre tu met un truc qui fait un reload infinie sur une page jusqu'a effondrement du serveur (flood). Enfin il y a la foule de chose que toi et moi et les autres ne savons pas mais il y a un truc que je sais c qu'un programme c du texte pas du html ...
 
Réponse à suivre
 
 

n°983836
sky_strike​r
Posté le 16-02-2005 à 18:11:03  profilanswer
 

frlp a écrit :

je viens de tester sur free, le meme code, et les variables se récup nikel.
 
Donc je pense au serveur.


 
Tu le test sur quoi ???  
 
Je pense au serveur ou à la version de PHP installer pour peu que se soit une vieille version et ton $_GET deviendrait HTTP_GET_VARS un truc comme ça ...
 
Mais bon là dessus je m'aventure pas trop  :jap:


Message édité par sky_striker le 16-02-2005 à 18:11:25
n°983841
soju
One shot !
Posté le 16-02-2005 à 18:15:16  profilanswer
 

bon revenons à nos moutons ^^
 

sky_striker a écrit :

$_GET deviendrait HTTP_GET_VARS un truc comme ça ...

bien vu
 
au fait, fan de gladiator ?  ;) strength & honor !

n°983851
frlp
Posté le 16-02-2005 à 18:22:13  profilanswer
 

marche pas ! :/  
 
Je vois directement avec le support du serveur...
 
Merchi :D

n°983898
esox_ch
Posté le 16-02-2005 à 19:04:16  profilanswer
 

Faut echapper tout ce qui peut servir de commentaire sous sql


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°983932
sky_strike​r
Posté le 16-02-2005 à 20:01:04  profilanswer
 

soju a écrit :

bon revenons à nos moutons ^^
 
bien vu
 
au fait, fan de gladiator ?  ;) strength & honor !


 
Oui j'adore ce film ...

n°984486
frlp
Posté le 17-02-2005 à 09:36:39  profilanswer
 

La réponse au dilemme.
 
la valeur du register_globals est sur off par défaut, il faut donc la mettre sur On dans le php.ini (mais cela active aussi une faille de sécurité).
 
Voila voila,  
 
rien de grave quoi :)
 
 
 
 

n°984490
sky_strike​r
Posté le 17-02-2005 à 09:41:57  profilanswer
 

frlp a écrit :

La réponse au dilemme.
 
la valeur du register_globals est sur off par défaut, il faut donc la mettre sur On dans le php.ini (mais cela active aussi une faille de sécurité).
 
Voila voila,  
 
rien de grave quoi :)


 
Salut
 
Il y a un truc que je capte pas le register global c'est ce qui justement te permet d'accéder à tes variable via $_GET["evenement"]eu lieu de simplement $evenement. Donc ça devrait marché même si il est à off ...
 
Tu peux juste nous redonner le script qui va bien du coup. Il y a un truc que j'ai pas bien capté ou quoi ...
 

n°984512
Xav_
The only one...
Posté le 17-02-2005 à 09:53:28  profilanswer
 

tout à fait d'accord avec la derniere remarque, dans la mesure ou tu utilise $_POST['ta_variable'], le register_global peux (et meme doit, de préférence) etre à OFF.


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°984519
esox_ch
Posté le 17-02-2005 à 09:57:57  profilanswer
 

C'est bizard mine de rien ... Il a pourtant fait ca proprement on dirait ... Si t'essaie des les recuperer avec POST (et donc mettre la method="POST" ) ca plante toujours?


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°984520
sky_strike​r
Posté le 17-02-2005 à 09:59:45  profilanswer
 

ouais mine de rien mine de crayon c bizard

n°984523
esox_ch
Posté le 17-02-2005 à 10:00:55  profilanswer
 

Au fait .. j'ai essayé de me retenir mais j'y arrive pas ... la balise <input> est une balise orpheline => <input />
 
idem pr <br> => <br />


Message édité par esox_ch le 17-02-2005 à 10:01:32

---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°984529
sky_strike​r
Posté le 17-02-2005 à 10:02:58  profilanswer
 

esox_ch a écrit :

Au fait .. j'ai essayé de me retenir mais j'y arrive pas ... la balise <input> est une balise orpheline => <input />
 
idem pr <br> => <br />


 
Je comprend pas où tu veux en venir ... Oui la balise input est orpheline et les siennes le son nan ???
 
Tu veux dire que c à cause de sa notation des balises que ça marche pas. Enfin moi je note comme lui et ça marche donc ...


Message édité par sky_striker le 17-02-2005 à 10:06:43
n°984537
Xav_
The only one...
Posté le 17-02-2005 à 10:07:48  profilanswer
 

qu'est-ce que ça peut faire que ces balises soit orpheline ??? le pb vient certainement pas de là, et surtout on a pas son doctype, s'il fait du HTML 4.01 trasitionnal, son code est valide comme ça...
 
Je suis dac pour insister sur un code propre est valide, mais comme on ne sait pas quel niveau de validation il a choisit... son code peut très bien etre correct...


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°984548
esox_ch
Posté le 17-02-2005 à 10:12:09  profilanswer
 

Non non c'est pas ça qui fait que ça marche pas, c'est juste qu'en lisant le script ça m'a fait flash la balise input non fermée ... Et maintenant que tu le dis c'est vrai que le doctype manque aussi ... en fin bon c'etait juste pour que ca se présente mieux ... Mais honnetement j'ai aucune idée de pourquoi ca plante .. tu peux mettre les pages en ligne pour qu'on teste ? Des fois que l'erreur soit autre part


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°984551
FlorentG
Unité de Masse
Posté le 17-02-2005 à 10:14:08  profilanswer
 

Moi je dirais surtout que filer le contenu d'une textarea en GET c'est pas supair :( Quand on envoi des informations qui ont des effets de bord (ici insertion dans une BDD), faut toujours mettre en POST, donc déjà on peut chercher de ce côté là

n°984565
sky_strike​r
Posté le 17-02-2005 à 10:22:10  profilanswer
 

FlorentG a écrit :

Moi je dirais surtout que filer le contenu d'une textarea en GET c'est pas supair :( Quand on envoi des informations qui ont des effets de bord (ici insertion dans une BDD), faut toujours mettre en POST, donc déjà on peut chercher de ce côté là


 
En plus si il y a beaucoup de texte à transmettre ça risque de ne pas passer car il me semble que l'on est limité en taille avec cette méthode ...
 
Si connerie corriger SVP  :D  

n°984568
FlorentG
Unité de Masse
Posté le 17-02-2005 à 10:22:54  profilanswer
 

Possible oui, et sans parler des caractère invalides dans une URL :/

n°984572
esox_ch
Posté le 17-02-2005 à 10:23:56  profilanswer
 

Effectivement l'url est limitée, je crois justement que c'etait sur ce forum que qqn nous avait demandé de tester son site et que qqn lui avait envoyé toute les specification xhtml par url pour lui saturer la base de donnée


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°984574
FlorentG
Unité de Masse
Posté le 17-02-2005 à 10:24:51  profilanswer
 

arf :D

n°984581
Xav_
The only one...
Posté le 17-02-2005 à 10:28:21  profilanswer
 

clair que t'a une limite par le GET, mais en fait t'en a une aussi en POST (bcp moins stricte il est vrai)...
 
En fait "théoriquement", un textarea n'a pas de limite, mais "pratiquement" les navigateurs sont prévu pour bloqué au-delà d'un certain tampon, qui si ma mémoire est bonne, est en général de 64KO, ce qui laisse quand meme de quoi écrire une sacré prose :D
 
Ceci provient de recherche sur le net d'il ya au moins un an (date à laquel je me suis penché sur le webmastering) et de ce qu'il en reste dans ma mémoire  
--> faut prendre avec une certaine ralitivité, merci d'avance de votre indulgence  :ange:


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
n°984586
sky_strike​r
Posté le 17-02-2005 à 10:30:46  profilanswer
 

Xav_ a écrit :

clair que t'a une limite par le GET, mais en fait t'en a une aussi en POST (bcp moins stricte il est vrai)...
 
En fait "théoriquement", un textarea n'a pas de limite, mais "pratiquement" les navigateurs sont prévu pour bloqué au-delà d'un certain tampon, qui si ma mémoire est bonne, est en général de 64KO, ce qui laisse quand meme de quoi écrire une sacré prose :D
 
Ceci provient de recherche sur le net d'il ya au moins un an (date à laquel je me suis penché sur le webmastering) et de ce qu'il en reste dans ma mémoire  
--> faut prendre avec une certaine ralitivité, merci d'avance de votre indulgence  :ange:


 
Mais supposes supposes donc à volonté un forum est un lieu d'échange et en ce moment c'est ce que nous faisons ...
 
Parfois il arrive que l'on échange des conneries c vrai mais on apprend plus qd on dit une connerie que qd on a raison ...
 
 :hello:
 
PS: dans ton cas je sais pas si c une connerie ou pas ... :kaola:


Message édité par sky_striker le 17-02-2005 à 10:31:21
mood
Publicité
Posté le   profilanswer
 


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

  Récuperation de données

 

Sujets relatifs
[html] envoi / recuperation de données de formulairerécupération de données dans une textbox
Récupération de données par DOM avec code javascript - svgrécupération des données d'un combobox C++ Builder
Récupération de données à partir d'excelrecuperation de données saisies a l'ecran puis les mettre dans un fich
récupération de données[résolu]DropDownList: récupération données
recuperation spécifique des données d'une table[C] Allocation dynamique et recuperation de donnees
Plus de sujets relatifs à : Récuperation de données


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