Page 1 sur 1

creer une page html avec php

Posté : 16 avr. 2008, 11:02
par Ritta
bonjour a tous!

J'aimerais creer une ptite application en php qui permet:

l'utilisateur doit entrer qque valeur le code doit:
d ouvrir une page html existance qui a l'extention .htm, de rechercher et de modifier du texte avec les valeurs saisies par l'utilisateur et enregistrer et faire une copie de cette page et l'enregistrer dans un emplacement definit et stable.
ouf c'est un peu compliquer tout ça
quelqu'un à une idée de par ou commencer?

Posté : 16 avr. 2008, 11:29
par Truc
Salut,
Prend ton temps pour bien expliquer le/les problèmes que tu rencontres.

html et php

Posté : 16 avr. 2008, 11:58
par ritta
Tou d'abord merci pour l'interet,

c'est question de modifier une page html dejà existante et de non l'ecraser sinon de creer une copie et de l'enregistrer dans un emplacement local.

Si y a quelque chose que je dois eclaircir je suis disponible
MErci à tous

Posté : 16 avr. 2008, 13:22
par iclo
Ca ne va pas répondre à ta question, mais pourquoi généré une page html "fixe" avec du php, plutôt qu'avoir une page php dynamique, pouvant présenter les différentes données saisies par un utilisateur, données qui pourraient être stockées dans une base de données ou un fichier ?

Posté : 17 avr. 2008, 08:01
par hakazizi
sans parler des problèmes de securités.

Posté : 17 avr. 2008, 23:18
par pjl
sans parler des problèmes de securités.
Je ne vois pas trop le rapport avec les problèmes de sécurité.

Sinon, l'intéret de la chose : une page rarement mise à jour et très consultée. Ca libère des ressources pour le serveur de BDD.
Ex : page de tarifs, page de liens.

Posté : 18 avr. 2008, 16:18
par Berzemus
sans parler des problèmes de securités.
Je ne vois pas trop le rapport avec les problèmes de sécurité.
C'est bien ce qu'il dit; n'en parlons pas...

Posté : 18 avr. 2008, 20:39
par katagoto
Oui, ce serait mieu en php, déjà on s'embêterais pas à chercher comment récupérer les données, je vous montre :
<?php
if(!@include("static.php"))
{
die ("fichier inéxistant");
}

if($_POST['posted'])
{
if(isset($_POST['variable1'])
{
$variable1_maj=addslashes($_POST['variable1'];
}
else
{
$variable1_maj=$variable1;
}
if(isset($_POST['variable2'])
{
$variable2_maj=addslashes($_POST['variable2'];
}
else
{
$variable2_maj=$variable2;
}
if(isset($_POST['variable3'])
{
$variable3_maj=addslashes($_POST['variable3'];
}
else
{
$variable3_maj=$variable3;
}
$maj[]='$variabble1='.$variable1_maj.';';
$maj[]='$variabble2='.$variable2_maj.';';
$maj[]='$variabble3='.$variable3_maj.';';
function write_file($file, $mode, $text) {
	if ($fp = fopen($file, $mode)) {
		if (is_array($text)) {
			foreach ($text as $t) {
				fwrite($fp, rtrim($t));
				fwrite($fp, "\r\n");
			}
		}
		else {
			fwrite($fp, $text);
			fwrite($fp, "\r\n");
		}
		fclose($fp);
		return true;
	}
	else return false;
}

write_file("static.php", "w", $maj);
write_file($date."static.php", "w", $maj);// sauvegarde $date évite d'écraser une sauvegarde
}
?>
<form action="<?php echo $PHP_SELF; ?>" method="POST">^
<p>Variable 1 :<input type="text" name="variable1" value="<?php echo $variable1; ?>" /></p>
<p>Variable 2 :<input type="text" name="variable2" value="<?php echo $variable2; ?>" /></p>
<p>Variable 3 :<input type="text" name="variable3" value="<?php echo $variable3; ?>" /></p>
<input type="hidden" name="posted" value="1" />
<input type="button" value="Mettre à jour" />
</form>
Voilà l'idée maitresse...

++

Posté : 18 avr. 2008, 21:26
par hakazizi
sans parler des problèmes de securités.
Je ne vois pas trop le rapport avec les problèmes de sécurité.

Sinon, l'intéret de la chose : une page rarement mise à jour et très consultée. Ca libère des ressources pour le serveur de BDD.
Ex : page de tarifs, page de liens.
quel problemes de securité c'est qu'en donnant la possibilité a quelqu'un de modifier ou de creer un nom de page peut supprimer des page d'un site.(certains vont me traiter de parano mais le risque existe).
voila pour le principal risque.

maintenant tu peut utiliser une page en php utiliser des info en get et réecrire l'url avec l'url rewritting.
tu peut transphormer par exemple l'url.
"mapage.php?titre=montitre"
en
"montitre.php","montitre.htm"," montitre.html" ou encore "montitre".

Posté : 19 avr. 2008, 00:01
par Berzemus
sans parler des problèmes de securités.
Je ne vois pas trop le rapport avec les problèmes de sécurité.

Sinon, l'intéret de la chose : une page rarement mise à jour et très consultée. Ca libère des ressources pour le serveur de BDD.
Ex : page de tarifs, page de liens.
quel problemes de securité c'est qu'en donnant la possibilité a quelqu'un de modifier ou de creer un nom de page peut supprimer des page d'un site.(certains vont me traiter de parano mais le risque existe).

hmm.. :roll: .. ainsi, wikipedia est en fait constamment sous la menace d'être complètement effacé par le premier venu ? doivent être stressés, ces gens la.. pour ça qu'il s'achètent des porches avec des jantes en or massif, pour déstresser..

Posté : 19 avr. 2008, 08:49
par katagoto
Berzemus ça n'a rien a voir wikipédia c'est un système de BDD + template, ils gèrent le peux de droits, si tu vas par là les forum comme PHPBB sont pareil xD

Posté : 19 avr. 2008, 10:05
par Berzemus
Berzemus ça n'a rien a voir wikipédia c'est un système de BDD + template, ils gèrent le peux de droits, si tu vas par là les forum comme PHPBB sont pareil xD
J'étais complètement HS.. je réagissais juste à la remarque de Haka. D'ailleurs, deux discussions dans un fil c'est mal, alors je mets un point d'arrêt a celle-ci.. fin du HS :wink:

Posté : 19 avr. 2008, 10:11
par katagoto
Petite rectification de mon code :
<?php 
if(!@include("static.php")) 
{ 
die ("fichier inéxistant"); 
} 

if($_POST['posted']) 
{ 
if(isset($_POST['variable1']) 
{ 
$variable1_maj=addslashes($_POST['variable1']; 
} 
else 
{ 
$variable1_maj=$variable1; 
} 
if(isset($_POST['variable2']) 
{ 
$variable2_maj=addslashes($_POST['variable2']; 
} 
else 
{ 
$variable2_maj=$variable2; 
} 
if(isset($_POST['variable3']) 
{ 
$variable3_maj=addslashes($_POST['variable3']; 
} 
else 
{ 
$variable3_maj=$variable3; 
}

$maj[]='<?php';
$maj[]='$variabble1='.$variable1_maj.';'; 
$maj[]='$variabble2='.$variable2_maj.';'; 
$maj[]='$variabble3='.$variable3_maj.';';
$maj[]='?>';

function write_file($file, $mode, $text) { 
    if ($fp = fopen($file, $mode)) { 
        if (is_array($text)) { 
            foreach ($text as $t) { 
                fwrite($fp, rtrim($t)); 
                fwrite($fp, "\r\n"); 
            } 
        } 
        else { 
            fwrite($fp, $text); 
            fwrite($fp, "\r\n"); 
        } 
        fclose($fp); 
        return true; 
    } 
    else return false; 
} 

write_file("static.php", "w", $maj); 
write_file($date."static.php", "w", $maj);// sauvegarde $date évite d'écraser une sauvegarde 
} 
?> 
<form action="<?php echo $PHP_SELF; ?>" method="POST">^ 
<p>Variable 1 :<input type="text" name="variable1" value="<?php echo $variable1; ?>" /></p> 
<p>Variable 2 :<input type="text" name="variable2" value="<?php echo $variable2; ?>" /></p> 
<p>Variable 3 :<input type="text" name="variable3" value="<?php echo $variable3; ?>" /></p> 
<input type="hidden" name="posted" value="1" /> 
<input type="button" value="Mettre à jour" /> 
</form>
J'avais oublié de mettre les balise <?php ?> parmis les lignes à écrire dans le fichier static.php

L'idéal serait que celui qui à posé la réponse réponde pour savoir si il est satisfait de la réponse :roll: