Voilà, comme je l'ai expliqué précédement (enfin je crois), je suis en train de développer un portail maison pour mon site qui jusqu'à présent utilisait Xoops.
J'ai bien avancé dans le code, et pendant qu'un ami m'aide à régler un problème de rubriques, je me disais que je pouvais installer un système de commentaires.
En fait, le site est totalement indépendant du forum (qui est PunBB). Je n'ai pas vraiment envie d'utiliser le forum pour poster des news, je trouve ça trop... Pas assez intéressant (en plus ça ferait des news en double, sur le site et le forum). J'ai donc eut une idée.
Lors de la création d'une news sur le site, un nouveau topic serait créé sur le forum, avec pour sujet, le titre de la news, pour posteur, un membre plus ou moins imaginaire (j'ai créé un compte membre à part spécialement pour ça), et pour message, un lien vers la news concernée.
Le problème, c'est la requète... :/ J'avais imaginer celle-ci :
INSERT INTO news AS n LEFT JOIN foo_topics AS t LEFT JOIN foo_posts AS p (n.titre, n.time, n.contenu, n.suite, n.source, n.lien_off, n.lien_fr, n.lien_div, t.poster, t.subject, t.posted, p.poster, p.poster_id, p.poster_ip, p.message, p.hide_smilies, p.posted, p.topic_id) VALUES ('".$_POST['n.titre']."', '".n.time()."', '".$_POST['n.contenu']."', '".$_POST['n.suite']."', '".$_POST['n.source']."', '".$_POST['n.lien_off']."', '".$_POST['n.lien_fr']."','".$_POST['n.lien_div']."', Admin News, '".$_POST['n.titre']."', '".n.time()."', Admin News, 32, 0.0.0.0, [url=http://www.damechaos.com/actualite.php?lire='(...) . $donnees['id'] . '"]'.$_POST['n.titre'].'[/url], 1, '".n.time()."', '')
Mais en fait elle ne marche pas :/ Quelqu'un aurait-il une idée svp ?
# pas bo!
Posté par kolter (site web personnel, Mastodon) . Évalué à 3.
ensuite y'a des précautions à prendre, tu utilises direct $_POST, c'est mal, parmi les premières choses à faire avec les données postées, il y'a un strip des balises (html, php,...), verifier les guillemets fourbes (magic_quotes), et j'en passe !
exemple : une bonne chose serait de faire une class database, et de faire une méthode query sur le prototype d'un printf (format, valeur1, valeur2, etc...), voir (func_get_args) dans laquelle tu utilises des fonction style mysql_real_escape_string, strip_tags et j'en passe !!!
tu vas trouver ça contraignant au début mais tu vas y gagner du temps ensuite bcp de temps !!! et tu va éviter des problèmes de sécurité et des petits malins qui te fouteront tout ton site web en l'air !!!
tu trouvera pas mal de doc sur la securisation des scripts php et l'utilisation/insertion des données issu de formulaire dans une BDD ...
M.
# peut-être que...
Posté par Aurélie . Évalué à 1.
En fait j'ai deux idées :/
la première :
1ere etape : il ajoute la news
2eme etape : il vérifit s'il y a un sujet de topic dans un forum désigné portant le même titre qu'une news (sachant que les membres ne peuvent pas poster dans ce forum)
3eme etape : s'il n'y en a pas, il ajoute le topic avec pour titre le titre de la news et message, un lien vers celle-ci.
deuxieme idée :
- insertion de la news
- quand topic inséré
- insérer topic avec titre de news
Mais ça donnerait quoi ça ?
Merci d'avance pour votre aide ;)
# houlà
Posté par Antonio Da Silva (site web personnel) . Évalué à 1.
->'".n.time()."' ( fin de la 5ème ligne ) : je comprends pas les pararenthèses
Et plusieurs valeurs qui à mon sens devrait être entre cotes
->Admin News
->la partie [url ... ]...[/url]
->l'adresse ip 0.0.0.0 ( ça doit dépendre de la base de donées)
D'une manière générale, les erreurs retournées ne sont pas négligeables lorsque l'on demande de l'aide sur du code.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.