8791 sujets

Développement web côté serveur, CMS

Salut tout le monde

Personnellement j'ai vu comment écrire (ou créer) dans un fichier simple grâce à php. Moi c'est pas je que je souhaite faire.

J'ai :
un fichier admin.php (contenant principalement du html, rajout de l’extension .php pour wampserver pour lire le php car y'en a un peu dedans)
un fichier text.php (contenant uniquement du php)

Dans mon text.php pour le moment j'ai ça

<?php

$titreProd = $_POST['TitreProd'];
$descriptionProd = $_POST['DescriptionProd'];
$prixProd = $_POST['PrixProd'];
$panierProd = $_POST['PanierProd'];
$imageProd = $_POST['ImageProd'];

echo ("L'image est : ".$imageProd."<br />");
echo ("La descritpion est : ".$descriptionProd."<br />");
echo ("Le prix est : ".$prixProd."<br />");
echo ("Le panier est : ".$panierProd."<br />");
echo ("Le titre est : ".$titreProd."<br />");

?>


Donc rien de bien fou.

Le truc c'est que mes variable j'aimerais les écrire (enfin, j'aimerais écrire les valeurs) dans du html bien formé, mais surtout placé a un endroit précis dans mon admin.php !

et le truc c'est que je vois absolument pas cmt faire pour placer le curseur à un endroit précis, et je trouve aucun tuto sur google, la plupart où ça parle de "curseur à placer" c'est en debut ou autres ", moi je cherche à placer le curseur sur une Div spécifique, et écrire juste avant la fermeture de cette Div.

Voila, je demande de l'aide Smiley smile connaissez-vous un tuto ou avez-vous une explication cohérente pour répondre à ma problèmatique ?

Merci d'avance, même si vous n'avez QUE lu et non répondu Smiley murf
Cordialement,
Modifié par JuseN (14 Jun 2012 - 11:31)
Bonjour,

Tu n'as qu'a faire un include de ton TEXT.PHP dans ton admin.

En revanche, envoyer des valeurs de POST directement en sortie, ca pose un sacré problème de sécurité.

Commences à apprendre une peu les rudiments du php avant de te lancer.
Ouh la... le curseur pour se déplacer dans un fichier ça fait très années 90. Smiley langue

Tu peux créer un template qui ressemblerai à ça :

template/produit.php


<!doctype html>
<html>
<head>
  <!-- des trucs -->
</head>
<body>
  <h1><?php echo $TitreProd; ?></h1>

  <p class="description">
    <img src="<?php echo $ImageProd; ?>" alt="" width="100" height="70" />
    <?php echo $DescriptionProd; ?>
  </p>

  <p class="prix">
    <?php echo $PrixProd; ?>
  </p>

  <p class="panier">
    <?php echo $PanierProd; ?>
  </p>
</body>
</html>


Et après pour peupler ton template avec ton contenu :

admin.php


<?php

extract($_POST);

ob_start();
require 'template/produit.php';
$page = ob_get_clean();

file_put_contents('mon_produit.html', $page);

Modifié par jb_gfx (14 Jun 2012 - 13:05)
rs459 a écrit :
Bonjour,

Tu n'as qu'a faire un include de ton TEXT.PHP dans ton admin.

En revanche, envoyer des valeurs de POST directement en sortie, ca pose un sacré problème de sécurité.

Commences à apprendre une peu les rudiments du php avant de te lancer.


Salut

Ah, parce que moi on m'avait dit qu'avec la méthod GET tes infos été envoyées dans l''URL directement, et que donc cela été moins sécuritaire, comparé à la méthode POST



jb_gfx a écrit :
Ouh la... le curseur pour se déplacer dans un fichier ça fait très années 90. langue


Ah me**e ^^



jb_gfx a écrit :
Tu peux créer un template


Oué j'y avais pas pensé aux templates, mais pour ce que je veux faire APRES, avec les templates ça aurait pas marché...

Merci à vous deux d'avoir répondu.
Cordialement,
JuseN a écrit :

Oué j'y avais pas pensé aux templates, mais pour ce que je veux faire APRES, avec les templates ça aurait pas marché...


Tu veux faire quoi ?
JuseN a écrit :
Ah, parce que moi on m'avait dit qu'avec la méthod GET tes infos été envoyées dans l''URL directement, et que donc cela été moins sécuritaire, comparé à la méthode POST


Archi faux, le post n'est absolument pas sécurisé. On peut commencer a parler de sécurité avec des SESSION mais encore faut il qu'elle soit bien sécurisé, ce qui n'est pas le cas sur 2 site sur 3...

JuseN a écrit :
Oué j'y avais pas pensé aux templates, mais pour ce que je veux faire APRES, avec les templates ça aurait pas marché...


Tu as aussi la solution DOMDocument avec PHP, mais c'est plus lourd a mettre en place et ça nécessite un bon système de cache, je l'utilise sur des boutique en ligne, le résultat est bluffant mais ça a pris de mois a mettre au point et quand le système de cache a des ratés, ton site se transforme en veau...
Le truc c'est que avant je pouvais pas toucher à la base de donnée qui me permettait de faire ce que je veux

Javais générer une liste d'artcile en HTML, et voulais 'ajouter' un article grâce au php en piochant les information d'un autre site (car je suis sur un site vitrine et un site de ventes)


Sans base de donnée les donnée été du HTML écrit en dur dans l'index.html, et quand j’ajoutai un article je voulais qu'il soit dans une div spécialiser, d'où ma question avec le curseur pour se placé à un endroit spécifique d'un fichier.

Mais au final, je vais me servir de la base de données (car c'est trop con de pas le faire) et de ce fait je travail directement sur la BDD et plus sur les données écrit en dur dans le HTML.

Merci, cordialement,
GET ou POST c'est pareil.

S'il affiche ce qui est entré par le client, sans filtrage, il y a une faille XSS.
Les variables $_GET sont transmises dans la query string de l'URL et sont donc visibles dans la barre d'adresse du navigateur.
Ce n'est pas le cas des variables $_POST.
Tant qu'aus variables $_SESSION, elles restent coté serveur (donc ne sont pas visibles du client).

Dans ce sens $_SESSION est plus sécurisé que $_POST, qui l'est plus que $_GET.

On peut aussi utiliser les cookies pour stocker des variables. A première vue cela peut cela lourd mais s'il le site gère des centaimes de milliers de connexions la place occupée par les variables de session est un éléments à prendre en compte
Merlin a écrit :

Dans ce sens $_SESSION est plus sécurisé que $_POST, qui l'est plus que $_GET.


C'est faux, les données POST ne sont en rien plus sécurisées que les données GET. Les données POST sont visibles et modifiables aussi facilement que les données GET (sauf si ton attaquant est un enfant de 8 ans... et encore, un enfant de 8 ans vivant en Amazonie et qui n'aurait jamais vu un ordinateur de sa vie).
Modifié par jb_gfx (15 Jun 2012 - 16:49)