begin process at 2010 03 16 16:03:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Débutants

 > 

Créer un repertoire et modifier un script


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Créer un repertoire et modifier un script

samedi 31 mai 2003 à 17:12:36 | Créer un repertoire et modifier un script

ElGaunt

Bonjour à tous,

Voila ci dessous un script dédié à autorier un visiteur à poster un commentaire. J'aimerais le modifier afin de pouvoir le mettre en place plus facilement.
Tous les commentaires sont sauvegardés dans un fichier "livre.dat" créé à la racine du repertoire où est située la page. Afin de l'installer plus facilement, j'aurais aimé que vous m'aidiez à le modifier.
Il faut savoir que je n'ai jamais fais de php de ma vie et que je n'y connais rien....

En fait, j'aimerais que au lieu de créer un fichier "livre.dat" à la racine du rep, il me crée un nouveau rep à chaque fois que le script est dans une page avec comme nom du rep : "le nom de la page qui a utilisée le script" et avec à l'interieur du rep un fichier "livre.dat" où serait stockés les commentaires.


Je crois pas avoir était trés clair
Voila un exemple :

A la base, j'ai ça :

Mon rep ==> Mapage.php
Mon rep ==> livre.dat

Je voudrais :

Mon rep ==> Mapage.php
Mon rep ==> Ma page ==> livre.dat
Mon rep ==> Mapage2.php
Mon rep ==> Ma page2 ==> livre.dat
etc... où "Ma page" et "Ma page2" sont deux nouveau repertoires

Vous voyez ce que je veux faire ? Quelqu'un peut m'aider ?
L'interet de cette modification est que comme je voudrais insérer le script dans 170 pages d'un coup, je n eme sens pas de le modifier 170 fois...

Voici le script :

<?php
// #####################################################################################
// =============================================================================
// Comment'R 1.0 - (c) 2000 Thierry Arsicaud (deltascripts@ifrance.com)
// =============================================================================
//
// *************************************************************************************
// Ce script affiche la liste des commentaires postés par les utilisateurs par groupes
// ou pages de N commentaires (nombre à définir ci-dessous). Il affiche également un
// formulaire offrant la possibilité d'envoyer de nouveaux commentaires.
//
// Configuration de paramètres d'affichage des deux tableaux utilisés pour
// la mise en forme de la page :
// Tableau A (1 colonne, 2n+1 lignes) : le tableau comprend 1 ligne d'entête, et 2n lignes
// permettant d'afficher alternativement le nom de l'auteur et le texte du commentaire
// Tableau B : affichage du formulaire permettant de poster un nouveau commentaire
// (1 colonne, 2 lignes dont 1 ligne d'entête)
//
// Modifiez les paramètres ci-dessous en n'oubliant pas de refermer
// les guillemets et le point virgule
// *************************************************************************************

// === Paramètres d'affichage du TableauA (affichage des commentaires déjà postés) ===

$largeurTableauxA="80%"; // Largeur du TableauA
$couleurBordTableauA="#bbbbbb"; // Couleur de la bordure du TableauA
$couleurFondEnteteTableauA="#A3DEF1"; // Couleur de fond de la ligne d'entête du tableauA
$policeEnteteTableauA="verdana"; // Police utilisée dans la ligne d'entête du tableauA
$couleurPoliceEnteteTableauA="#000000"; // Couleur de la police utilisée dans la ligne d'entête du tableauA
$couleurFondLigneNomAuteurTableauA="#F6F6F6"; // Couleur de fond des lignes "Nom de l'auteur"
$policeLignesNomAuteurTableauA="verdana"; // Police utilisée dans les lignes "Nom de l'auteur"
$couleurPoliceLignesNomAuteurTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Nom de l'auteur"
$couleurFondLigneCommentaireTableauA="#ffffff"; // Couleur de fond des lignes "Commentaire"
$policeLignesCommentairesTableauA="times"; // Police utilisée dans les lignes "Commentaire"
$couleurPoliceLignesCommentairesTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Commentaire"

$NombreComParPage=10; // Nombre maximum de commentaires à afficher dans le tableau (par page)
$NombreMaxPages=20; // Nombre maximum de pages de commentaires susceptibles d'être affichées

// === Paramètres d'affichage du TableauB (affichage du formulaire permettant d'ajouter un nouveau commentaire) ===

$largeurTableauxB="80%"; // Largeur du TableauB
$couleurBordTableauB="#bbbbbb"; // Couleur de la bordure du TableauB
$couleurFondEnteteTableauB="#A3DEF1"; // Couleur de fond de la ligne d'entête du tableauB
$policeEnteteTableauB="verdana"; // Police utilisée dans la ligne d'entête du tableauB
$couleurPoliceEnteteTableauB="#000000"; // Couleur de la police utilisée dans la ligne d'entête du tableauB
$couleurFondFormulaireTableauB="#F6F6F6"; // Couleur de fond de la cellule affichant le formulaire
$policeFondFormulaireTableauB="verdana"; // Police utilisée dans la cellule affichant le formulaire
$couleurPoliceFondFormulaireTableauB="#000000"; // Couleur de la police utilisée dans la cellule affichant le formulaire

// === Paramètres destinés au contrôle des messages postés (dispositif "anti-piratage") ===

$longueurMaxCommentaires="10000"; // Nombre maximum de caractères pouvant être postés dans un commentaire
$longueurMaxMots="50"; // Nombre maximum de caractères par "mot" (ce dispositif permet d'empêcher une éventuelle augmentation incontrôlée de la largeur des tableaux)

// #####################################################################################

// #####################################################################################
// ****************************************************************************************
// Vérification du nombre de caractères envoyés dans le commentaire éventuellement posté.
// (certains utilisateurs mal intentionnés pourraient être tentés d'envoyer des commentaires
// comportant un très grand nombre de caractères, dans le but de ralentir le temps
// d'affichage du livre d'or)
// ****************************************************************************************

if((@ strlen($n)>$longueurMaxCommentaires) or (@ strlen($c)>$longueurMaxCommentaires)) {
print("Désolé, la taille maximale des commentaires pouvant être postés est limitée à $longueurMaxCommentaires caractères.<br>\n");
print("<a href=\"index.php\">Retour au Livre d'Or</a>\n");
exit;
}
// #####################################################################################

// #####################################################################################
// ***********************************************************************************
// Création du fichier livre.dat s'il n'existe pas
// ***********************************************************************************

if(!file_exists("livre.dat")) {
$idFicLivre=fopen("livre.dat","w+");
fputs($idFicLivre,"Fichier Index. Ne pas éditer !\n");
fclose($idFicLivre);
}

if(!isset($c)) $c="";
if(!isset($n)) $n="";
if(!isset($p)) $p="";

// ***********************************************************************************
// Définition de la fonction coupeMotsLongs($chaine,$ncaracteres) destinée à découper
// mots contenants plus de $ncaracteres caractères.
// (certains utilisateurs envoient parfois des textes contenant des mots très long,
// ce qui a pour effet d'altérer la structure d'affichage des tableaux)
// ***********************************************************************************

function coupeMotsLongs($chaine,$ncaracteres) {
$chaineRes=$chaine;
while(ereg("([^ ]{".$ncaracteres."})[^ ]",$chaineRes,$corres)) {
$partRep=$corres[1];
$chaineRes=ereg_replace($partRep,$partRep." <br> ",$chaineRes);
}
return($chaineRes);
}

// ***********************************************************************************
// Nettoyage et enregistrement des nouveaux commentaires envoyés lors de l'appel du script
// ***********************************************************************************

if ($c and $n) {

// détermination de la date
$tdate=getdate();
$jour=sprintf("%02.2d",$tdate["mday"])."/".sprintf("%02.2d",$tdate["mon"])."/".$tdate["year"];
$heure=sprintf("%02.2d",$tdate["hours"])."H".sprintf("%02.2d",$tdate["minutes"]);
$d=$jour." à ".$heure;

// nettoyage du nom
$n=phplentities($n);
$n=stripslashes($n);
$n=trim($n);

// nettoyage du commentaire
$c=phplentities($c);
$c=str_replace(chr(10)," <br> ",$c);
$c=str_replace(chr(13),"",$c);
$c=stripslashes($c);
$c=trim($c);

$idFicLivreCom=fopen("livre.dat","a+");
fputs($idFicLivreCom,$n); // 1ère ligne
fputs($idFicLivreCom,"|"); //
fputs($idFicLivreCom,$d."|\n"); //
fputs($idFicLivreCom,$c."\n"); // 2ème ligne
fclose($idFicLivreCom);

}

// ***********************************************************************************
// Lecture des messages déjà postés dans le livre, et stockage des données
// dans les tableaux $nom et $commentaire
// ***********************************************************************************

$TabLivre=file("livre.dat");
$nLignesTabLivre=count($TabLivre)-1;
$nCommentaires=$nLignesTabLivre/2;

for($compt=1;$compt<=$nCommentaires;$compt++) {
$nom[$compt]=trim(stripslashes(strtok($TabLivre[($compt*2)-1],"|")));
$date[$compt]=trim(stripslashes(strtok("|")));
$commentaire[$compt]=trim(stripslashes($TabLivre[($compt*2)]));
}

// ***********************************************************************************
// Affichage d'un message de remerciement au cas ou un commentaire a été envoyé en même
// temps que l'appel du script
// ***********************************************************************************

if($n and $c) {
print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
print("<center> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
print("<b>Merci pour votre participation !</b> \n");
print("</font> \n");
print("</center> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}

// ***********************************************************************************
// Affichage des commentaires déjà postés dans un tableau
// ***********************************************************************************

if(!$p) {
$p=1; // $p représente le numéro de la page de commentaire à afficher : par défaut, $p=1
}

if($nCommentaires>0) {

print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxA\" align=\"center\" bgcolor=\"$couleurBordTableauA\"> \n");
print("<tr><td> \n");

print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");

print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"30\"> \n");

if($nCommentaires>$NombreComParPage) {
print("<center> \n");
print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<b>pages</b>   \n");
print("<b> \n");
for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
if($a==$p) print("$a   \n");
else print("<a href=\"index.php?p=$a\">$a</a>   \n");
}
print("</b> \n");
print("</font> \n");
print("</center> \n");
}

print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<center> \n");
print("<b><a href=\"#ajout\">ajouter un nouveau commentaire</a></b> <br> \n");
print("</center> \n");
print("</font> \n");
print("</td> \n");
print("</tr> \n");

for($compt=($nCommentaires-(($p-1)*$NombreComParPage));$compt>=max(1,($nCommentaires-($p*$NombreComParPage)+1));$compt--) {
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\"> \n");
print("<table> \n");
print("<tr> \n");
print("<td width=\"10\"> </td> \n");
print("<td> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"><b>".coupeMotsLongs($nom[$compt],$longueurMaxMots)."</b> a écrit, le ".$date[$compt]." :</font> \n");
print("</td> \n");
print("</tr> \n");
print("</table> \n");
print("</td></tr> \n");
print("<tr><td bgcolor=\"$couleurFondLigneCommentaireTableauA\"> \n");
print("<table> \n");
print("<tr> \n");
print("<td width=\"20\"> </td> \n");
print("<td> \n");
print("<font face=\"$policeLignesCommentairesTableauA\" color=\"$couleurPoliceLignesCommentairesTableauA\">".coupeMotsLongs($commentaire[$compt],$longueurMaxMots)."</font>\n");
print("</td> \n");
print("</tr> \n");
print("</table> \n");
print("</td></tr> \n");
}

if(($nCommentaires>$NombreComParPage) and $p<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1))) {
print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"20\"> \n");
print("<center> \n");
print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
print("<b>pages</b>   \n");
print("<b> \n");
for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
if($a==$p) print("$a   \n");
else print("<a href=\"index.php?p=$a\">$a</a>   \n");
}
print("</b> \n");
print("</font> \n");
print("</center> \n");
print("</td> \n");
print("</tr> \n");
}

print("</table> \n");

print("</td></tr> \n");

print("</table> \n");

print("<br> \n");

}

// *********************************************************************************************
// Affichage d'un message d'avertissement au cas où aucun commentaire n'a été encore été envoyé
// *********************************************************************************************

if($nCommentaires<1) {
print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
print("<center> \n");
print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
print("<b>Le livre d'or ne comporte encore aucun commentaire.</b> \n");
print("</font> \n");
print("</center> \n");
print("</td></tr> \n");
print("</table> \n");
print("<br> \n");
}


// ***********************************************************************************
// Affichage du formulaire permettant de poster un nouveau commentaire
// ***********************************************************************************


print("<a name=\"ajout\"></a>");

print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxB\" align=\"center\" bgcolor=\"$couleurBordTableauB\"> \n");
print("<tr><td> \n");

print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");

print("<tr> \n");
print("<td bgcolor=\"$couleurFondEnteteTableauB\" height=\"30\"> \n");
print("<font face=\"$policeEnteteTableauB\" color=\"$couleurPoliceEnteteTableauB\" size=\"-1\"> \n");

if($nCommentaires>0) print("<b><center>Ajouter un nouveau commentaire :</center></b> \n");
else print("<b><center>Envoyer un premier commentaire :</center></b> \n");

print("</font> \n");
print("</td> \n");
print("</tr> \n");

print("<tr><td bgcolor=\"$couleurFondFormulaireTableauB\"> \n");
print("<form method=\"POST\"action=\"index.php\"> \n");
print("<center> \n");
print("<br> \n");
print("<font face=\"$policeFondFormulaireTableauB\" color=\"$couleurPoliceFondFormulaireTableauB\" size=\"-1\"> \n");
print("<b>Votre nom</b> :  \n");
print("</font> \n");
print("<input type=\"text\" name=\"n\" size=\"22\"> \n");
print("<br><br> \n");
print("<textarea rows=\"6\" name=\"c\" cols=\"40\" wrap=\"virtual\"></textarea> \n");
print("<br> \n");
print("<input type=\"submit\" value=\"Envoyer !\" name=\"B1\"> \n");
print("</form> \n");
print("</td></tr> \n");

print("</table> \n");

print("</td></tr> \n");
print("</table> \n");

// #####################################################################################
?>






Je connais pas du tout le php, mais il me semble que si je faisais un truc comme ça, ça pourrait marcher :


CODE :

if(!file_exists("livre.dat")) {
$idFicLivre=fopen("livre.dat","w+");
fputs($idFicLivre,"Fichier Index. Ne pas éditer !\n");
fclose($idFicLivre);
}


Bon, là, il verifie, l'existence du "livre.dat".
Ce que je pensais, c'est qu'il suffirait de lui demander de vérifier s'il existe un rep du nom de : "nom de la page d'où vient le script".
Si oui, niquel, il va dans ce rep et ouvre le "livre.dat" pour faire ce qu'il a à y faire.
Si non, il crée ce fameux repertoire et un nouveau "livre.dat"

Apres, il reste plus qu'a modifier deux ou trois chemin d'accés dans le code en remplaçant /livre.dat par une-variable-contenant-le-nom-de-la-page-donc-du-rep/livre.dat


Cela me semble possible, mais bon, comme je ne connais pas le php, je peux pas dire...
Ca vous semble pas possible ma manière de voir les choses ?


J'espere que vous pourrez m'aider, merci d'avance.
A bientôt.
Florent
lundi 2 juin 2003 à 12:31:05 | Re : Créer un repertoire et modifier un script

revinc

ton truc c vraiment trop long à faire, tout ce que je peux t'aider c'est :

mkdir("dossier") pour créer un dossier

et ce genre de truc à modifier, ça prend quand même pas mal de temps, essaie donc de le faire par toi-même...


comme ça t'apprendra en plus ;-p

++

Re|V|inc


-------------------------------
Réponse au message :
-------------------------------

> Bonjour à tous,
>
> Voila ci dessous un script dédié à autorier un visiteur à poster un commentaire. J'aimerais le modifier afin de pouvoir le mettre en place plus facilement.
> Tous les commentaires sont sauvegardés dans un fichier "livre.dat" créé à la racine du repertoire où est située la page. Afin de l'installer plus facilement, j'aurais aimé que vous m'aidiez à le modifier.
> Il faut savoir que je n'ai jamais fais de php de ma vie et que je n'y connais rien....
>
> En fait, j'aimerais que au lieu de créer un fichier "livre.dat" à la racine du rep, il me crée un nouveau rep à chaque fois que le script est dans une page avec comme nom du rep : "le nom de la page qui a utilisée le script" et avec à l'interieur du rep un fichier "livre.dat" où serait stockés les commentaires.
>
>
> Je crois pas avoir était trés clair
> Voila un exemple :
>
> A la base, j'ai ça :
>
> Mon rep ==> Mapage.php
> Mon rep ==> livre.dat
>
> Je voudrais :
>
> Mon rep ==> Mapage.php
> Mon rep ==> Ma page ==> livre.dat
> Mon rep ==> Mapage2.php
> Mon rep ==> Ma page2 ==> livre.dat
> etc... où "Ma page" et "Ma page2" sont deux nouveau repertoires
>
> Vous voyez ce que je veux faire ? Quelqu'un peut m'aider ?
> L'interet de cette modification est que comme je voudrais insérer le script dans 170 pages d'un coup, je n eme sens pas de le modifier 170 fois...
>
> Voici le script :
>
> <?php
> // #####################################################################################
> // =============================================================================
> // Comment'R 1.0 - (c) 2000 Thierry Arsicaud (deltascripts@ifrance.com)
> // =============================================================================
> //
> // *************************************************************************************
> // Ce script affiche la liste des commentaires postés par les utilisateurs par groupes
> // ou pages de N commentaires (nombre à définir ci-dessous). Il affiche également un
> // formulaire offrant la possibilité d'envoyer de nouveaux commentaires.
> //
> // Configuration de paramètres d'affichage des deux tableaux utilisés pour
> // la mise en forme de la page :
> // Tableau A (1 colonne, 2n+1 lignes) : le tableau comprend 1 ligne d'entête, et 2n lignes
> // permettant d'afficher alternativement le nom de l'auteur et le texte du commentaire
> // Tableau B : affichage du formulaire permettant de poster un nouveau commentaire
> // (1 colonne, 2 lignes dont 1 ligne d'entête)
> //
> // Modifiez les paramètres ci-dessous en n'oubliant pas de refermer
> // les guillemets et le point virgule
> // *************************************************************************************
>
> // === Paramètres d'affichage du TableauA (affichage des commentaires déjà postés) ===
>
> $largeurTableauxA="80%"; // Largeur du TableauA
> $couleurBordTableauA="#bbbbbb"; // Couleur de la bordure du TableauA
> $couleurFondEnteteTableauA="#A3DEF1"; // Couleur de fond de la ligne d'entête du tableauA
> $policeEnteteTableauA="verdana"; // Police utilisée dans la ligne d'entête du tableauA
> $couleurPoliceEnteteTableauA="#000000"; // Couleur de la police utilisée dans la ligne d'entête du tableauA
> $couleurFondLigneNomAuteurTableauA="#F6F6F6"; // Couleur de fond des lignes "Nom de l'auteur"
> $policeLignesNomAuteurTableauA="verdana"; // Police utilisée dans les lignes "Nom de l'auteur"
> $couleurPoliceLignesNomAuteurTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Nom de l'auteur"
> $couleurFondLigneCommentaireTableauA="#ffffff"; // Couleur de fond des lignes "Commentaire"
> $policeLignesCommentairesTableauA="times"; // Police utilisée dans les lignes "Commentaire"
> $couleurPoliceLignesCommentairesTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Commentaire"
>
> $NombreComParPage=10; // Nombre maximum de commentaires à afficher dans le tableau (par page)
> $NombreMaxPages=20; // Nombre maximum de pages de commentaires susceptibles d'être affichées
>
> // === Paramètres d'affichage du TableauB (affichage du formulaire permettant d'ajouter un nouveau commentaire) ===
>
> $largeurTableauxB="80%"; // Largeur du TableauB
> $couleurBordTableauB="#bbbbbb"; // Couleur de la bordure du TableauB
> $couleurFondEnteteTableauB="#A3DEF1"; // Couleur de fond de la ligne d'entête du tableauB
> $policeEnteteTableauB="verdana"; // Police utilisée dans la ligne d'entête du tableauB
> $couleurPoliceEnteteTableauB="#000000"; // Couleur de la police utilisée dans la ligne d'entête du tableauB
> $couleurFondFormulaireTableauB="#F6F6F6"; // Couleur de fond de la cellule affichant le formulaire
> $policeFondFormulaireTableauB="verdana"; // Police utilisée dans la cellule affichant le formulaire
> $couleurPoliceFondFormulaireTableauB="#000000"; // Couleur de la police utilisée dans la cellule affichant le formulaire
>
> // === Paramètres destinés au contrôle des messages postés (dispositif "anti-piratage") ===
>
> $longueurMaxCommentaires="10000"; // Nombre maximum de caractères pouvant être postés dans un commentaire
> $longueurMaxMots="50"; // Nombre maximum de caractères par "mot" (ce dispositif permet d'empêcher une éventuelle augmentation incontrôlée de la largeur des tableaux)
>
> // #####################################################################################
>
> // #####################################################################################
> // ****************************************************************************************
> // Vérification du nombre de caractères envoyés dans le commentaire éventuellement posté.
> // (certains utilisateurs mal intentionnés pourraient être tentés d'envoyer des commentaires
> // comportant un très grand nombre de caractères, dans le but de ralentir le temps
> // d'affichage du livre d'or)
> // ****************************************************************************************
>
> if((@ strlen($n)>$longueurMaxCommentaires) or (@ strlen($c)>$longueurMaxCommentaires)) {
> print("Désolé, la taille maximale des commentaires pouvant être postés est limitée à $longueurMaxCommentaires caractères.<br>\n");
> print("<a href=\"index.php\">Retour au Livre d'Or</a>\n");
> exit;
> }
> // #####################################################################################
>
> // #####################################################################################
> // ***********************************************************************************
> // Création du fichier livre.dat s'il n'existe pas
> // ***********************************************************************************
>
> if(!file_exists("livre.dat")) {
> $idFicLivre=fopen("livre.dat","w+");
> fputs($idFicLivre,"Fichier Index. Ne pas éditer !\n");
> fclose($idFicLivre);
> }
>
> if(!isset($c)) $c="";
> if(!isset($n)) $n="";
> if(!isset($p)) $p="";
>
> // ***********************************************************************************
> // Définition de la fonction coupeMotsLongs($chaine,$ncaracteres) destinée à découper
> // mots contenants plus de $ncaracteres caractères.
> // (certains utilisateurs envoient parfois des textes contenant des mots très long,
> // ce qui a pour effet d'altérer la structure d'affichage des tableaux)
> // ***********************************************************************************
>
> function coupeMotsLongs($chaine,$ncaracteres) {
> $chaineRes=$chaine;
> while(ereg("([^ ]{".$ncaracteres."})[^ ]",$chaineRes,$corres)) {
> $partRep=$corres[1];
> $chaineRes=ereg_replace($partRep,$partRep." <br> ",$chaineRes);
> }
> return($chaineRes);
> }
>
> // ***********************************************************************************
> // Nettoyage et enregistrement des nouveaux commentaires envoyés lors de l'appel du script
> // ***********************************************************************************
>
> if ($c and $n) {
>
> // détermination de la date
> $tdate=getdate();
> $jour=sprintf("%02.2d",$tdate["mday"])."/".sprintf("%02.2d",$tdate["mon"])."/".$tdate["year"];
> $heure=sprintf("%02.2d",$tdate["hours"])."H".sprintf("%02.2d",$tdate["minutes"]);
> $d=$jour." à ".$heure;
>
> // nettoyage du nom
> $n=phplentities($n);
> $n=stripslashes($n);
> $n=trim($n);
>
> // nettoyage du commentaire
> $c=phplentities($c);
> $c=str_replace(chr(10)," <br> ",$c);
> $c=str_replace(chr(13),"",$c);
> $c=stripslashes($c);
> $c=trim($c);
>
> $idFicLivreCom=fopen("livre.dat","a+");
> fputs($idFicLivreCom,$n); // 1ère ligne
> fputs($idFicLivreCom,"|"); //
> fputs($idFicLivreCom,$d."|\n"); //
> fputs($idFicLivreCom,$c."\n"); // 2ème ligne
> fclose($idFicLivreCom);
>
> }
>
> // ***********************************************************************************
> // Lecture des messages déjà postés dans le livre, et stockage des données
> // dans les tableaux $nom et $commentaire
> // ***********************************************************************************
>
> $TabLivre=file("livre.dat");
> $nLignesTabLivre=count($TabLivre)-1;
> $nCommentaires=$nLignesTabLivre/2;
>
> for($compt=1;$compt<=$nCommentaires;$compt++) {
> $nom[$compt]=trim(stripslashes(strtok($TabLivre[($compt*2)-1],"|")));
> $date[$compt]=trim(stripslashes(strtok("|")));
> $commentaire[$compt]=trim(stripslashes($TabLivre[($compt*2)]));
> }
>
> // ***********************************************************************************
> // Affichage d'un message de remerciement au cas ou un commentaire a été envoyé en même
> // temps que l'appel du script
> // ***********************************************************************************
>
> if($n and $c) {
> print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
> print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
> print("<center> \n");
> print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
> print("<b>Merci pour votre participation !</b> \n");
> print("</font> \n");
> print("</center> \n");
> print("</td></tr> \n");
> print("</table> \n");
> print("<br> \n");
> }
>
> // ***********************************************************************************
> // Affichage des commentaires déjà postés dans un tableau
> // ***********************************************************************************
>
> if(!$p) {
> $p=1; // $p représente le numéro de la page de commentaire à afficher : par défaut, $p=1
> }
>
> if($nCommentaires>0) {
>
> print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxA\" align=\"center\" bgcolor=\"$couleurBordTableauA\"> \n");
> print("<tr><td> \n");
>
> print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
>
> print("<tr> \n");
> print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"30\"> \n");
>
> if($nCommentaires>$NombreComParPage) {
> print("<center> \n");
> print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
> print("<b>pages</b>   \n");
> print("<b> \n");
> for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
> if($a==$p) print("$a   \n");
> else print("<a href=\"index.php?p=$a\">$a</a>   \n");
> }
> print("</b> \n");
> print("</font> \n");
> print("</center> \n");
> }
>
> print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
> print("<center> \n");
> print("<b><a href=\"#ajout\">ajouter un nouveau commentaire</a></b> <br> \n");
> print("</center> \n");
> print("</font> \n");
> print("</td> \n");
> print("</tr> \n");
>
> for($compt=($nCommentaires-(($p-1)*$NombreComParPage));$compt>=max(1,($nCommentaires-($p*$NombreComParPage)+1));$compt--) {
> print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\"> \n");
> print("<table> \n");
> print("<tr> \n");
> print("<td width=\"10\"> </td> \n");
> print("<td> \n");
> print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"><b>".coupeMotsLongs($nom[$compt],$longueurMaxMots)."</b> a écrit, le ".$date[$compt]." :</font> \n");
> print("</td> \n");
> print("</tr> \n");
> print("</table> \n");
> print("</td></tr> \n");
> print("<tr><td bgcolor=\"$couleurFondLigneCommentaireTableauA\"> \n");
> print("<table> \n");
> print("<tr> \n");
> print("<td width=\"20\"> </td> \n");
> print("<td> \n");
> print("<font face=\"$policeLignesCommentairesTableauA\" color=\"$couleurPoliceLignesCommentairesTableauA\">".coupeMotsLongs($commentaire[$compt],$longueurMaxMots)."</font>\n");
> print("</td> \n");
> print("</tr> \n");
> print("</table> \n");
> print("</td></tr> \n");
> }
>
> if(($nCommentaires>$NombreComParPage) and $p<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1))) {
> print("<tr> \n");
> print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"20\"> \n");
> print("<center> \n");
> print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
> print("<b>pages</b>   \n");
> print("<b> \n");
> for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
> if($a==$p) print("$a   \n");
> else print("<a href=\"index.php?p=$a\">$a</a>   \n");
> }
> print("</b> \n");
> print("</font> \n");
> print("</center> \n");
> print("</td> \n");
> print("</tr> \n");
> }
>
> print("</table> \n");
>
> print("</td></tr> \n");
>
> print("</table> \n");
>
> print("<br> \n");
>
> }
>
> // *********************************************************************************************
> // Affichage d'un message d'avertissement au cas où aucun commentaire n'a été encore été envoyé
> // *********************************************************************************************
>
> if($nCommentaires<1) {
> print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
> print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
> print("<center> \n");
> print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
> print("<b>Le livre d'or ne comporte encore aucun commentaire.</b> \n");
> print("</font> \n");
> print("</center> \n");
> print("</td></tr> \n");
> print("</table> \n");
> print("<br> \n");
> }
>
>
> // ***********************************************************************************
> // Affichage du formulaire permettant de poster un nouveau commentaire
> // ***********************************************************************************
>
>
> print("<a name=\"ajout\"></a>");
>
> print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxB\" align=\"center\" bgcolor=\"$couleurBordTableauB\"> \n");
> print("<tr><td> \n");
>
> print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
>
> print("<tr> \n");
> print("<td bgcolor=\"$couleurFondEnteteTableauB\" height=\"30\"> \n");
> print("<font face=\"$policeEnteteTableauB\" color=\"$couleurPoliceEnteteTableauB\" size=\"-1\"> \n");
>
> if($nCommentaires>0) print("<b><center>Ajouter un nouveau commentaire :</center></b> \n");
> else print("<b><center>Envoyer un premier commentaire :</center></b> \n");
>
> print("</font> \n");
> print("</td> \n");
> print("</tr> \n");
>
> print("<tr><td bgcolor=\"$couleurFondFormulaireTableauB\"> \n");
> print("<form method=\"POST\"action=\"index.php\"> \n");
> print("<center> \n");
> print("<br> \n");
> print("<font face=\"$policeFondFormulaireTableauB\" color=\"$couleurPoliceFondFormulaireTableauB\" size=\"-1\"> \n");
> print("<b>Votre nom</b> :  \n");
> print("</font> \n");
> print("<input type=\"text\" name=\"n\" size=\"22\"> \n");
> print("<br><br> \n");
> print("<textarea rows=\"6\" name=\"c\" cols=\"40\" wrap=\"virtual\"></textarea> \n");
> print("<br> \n");
> print("<input type=\"submit\" value=\"Envoyer !\" name=\"B1\"> \n");
> print("</form> \n");
> print("</td></tr> \n");
>
> print("</table> \n");
>
> print("</td></tr> \n");
> print("</table> \n");
>
> // #####################################################################################
> ?>
>
>
>
>
>
>
> Je connais pas du tout le php, mais il me semble que si je faisais un truc comme ça, ça pourrait marcher :
>
>
> CODE :
>
> if(!file_exists("livre.dat")) {
> $idFicLivre=fopen("livre.dat","w+");
> fputs($idFicLivre,"Fichier Index. Ne pas éditer !\n");
> fclose($idFicLivre);
> }
>
>
> Bon, là, il verifie, l'existence du "livre.dat".
> Ce que je pensais, c'est qu'il suffirait de lui demander de vérifier s'il existe un rep du nom de : "nom de la page d'où vient le script".
> Si oui, niquel, il va dans ce rep et ouvre le "livre.dat" pour faire ce qu'il a à y faire.
> Si non, il crée ce fameux repertoire et un nouveau "livre.dat"
>
> Apres, il reste plus qu'a modifier deux ou trois chemin d'accés dans le code en remplaçant /livre.dat par une-variable-contenant-le-nom-de-la-page-donc-du-rep/livre.dat
>
>
> Cela me semble possible, mais bon, comme je ne connais pas le php, je peux pas dire...
> Ca vous semble pas possible ma manière de voir les choses ?
>
>
> J'espere que vous pourrez m'aider, merci d'avance.
> A bientôt.
> Florent
>
lundi 2 juin 2003 à 13:50:40 | Re : Créer un repertoire et modifier un script

ElGaunt





-------------------------------
Réponse au message :
-------------------------------

> ton truc c vraiment trop long à faire, tout ce que je peux t'aider c'est :
>
> mkdir("dossier") pour créer un dossier
>
> et ce genre de truc à modifier, ça prend quand même pas mal de temps, essaie donc de le faire par toi-même...
>
>
> comme ça t'apprendra en plus ;-p
>
> ++
>
> Re|V|inc
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Bonjour à tous,
> >
> > Voila ci dessous un script dédié à autorier un visiteur à poster un commentaire. J'aimerais le modifier afin de pouvoir le mettre en place plus facilement.
> > Tous les commentaires sont sauvegardés dans un fichier "livre.dat" créé à la racine du repertoire où est située la page. Afin de l'installer plus facilement, j'aurais aimé que vous m'aidiez à le modifier.
> > Il faut savoir que je n'ai jamais fais de php de ma vie et que je n'y connais rien....
> >
> > En fait, j'aimerais que au lieu de créer un fichier "livre.dat" à la racine du rep, il me crée un nouveau rep à chaque fois que le script est dans une page avec comme nom du rep : "le nom de la page qui a utilisée le script" et avec à l'interieur du rep un fichier "livre.dat" où serait stockés les commentaires.
> >
> >
> > Je crois pas avoir était trés clair
> > Voila un exemple :
> >
> > A la base, j'ai ça :
> >
> > Mon rep ==> Mapage.php
> > Mon rep ==> livre.dat
> >
> > Je voudrais :
> >
> > Mon rep ==> Mapage.php
> > Mon rep ==> Ma page ==> livre.dat
> > Mon rep ==> Mapage2.php
> > Mon rep ==> Ma page2 ==> livre.dat
> > etc... où "Ma page" et "Ma page2" sont deux nouveau repertoires
> >
> > Vous voyez ce que je veux faire ? Quelqu'un peut m'aider ?
> > L'interet de cette modification est que comme je voudrais insérer le script dans 170 pages d'un coup, je n eme sens pas de le modifier 170 fois...
> >
> > Voici le script :
> >
> > <?php
> > // #####################################################################################
> > // =============================================================================
> > // Comment'R 1.0 - (c) 2000 Thierry Arsicaud (deltascripts@ifrance.com)
> > // =============================================================================
> > //
> > // *************************************************************************************
> > // Ce script affiche la liste des commentaires postés par les utilisateurs par groupes
> > // ou pages de N commentaires (nombre à définir ci-dessous). Il affiche également un
> > // formulaire offrant la possibilité d'envoyer de nouveaux commentaires.
> > //
> > // Configuration de paramètres d'affichage des deux tableaux utilisés pour
> > // la mise en forme de la page :
> > // Tableau A (1 colonne, 2n+1 lignes) : le tableau comprend 1 ligne d'entête, et 2n lignes
> > // permettant d'afficher alternativement le nom de l'auteur et le texte du commentaire
> > // Tableau B : affichage du formulaire permettant de poster un nouveau commentaire
> > // (1 colonne, 2 lignes dont 1 ligne d'entête)
> > //
> > // Modifiez les paramètres ci-dessous en n'oubliant pas de refermer
> > // les guillemets et le point virgule
> > // *************************************************************************************
> >
> > // === Paramètres d'affichage du TableauA (affichage des commentaires déjà postés) ===
> >
> > $largeurTableauxA="80%"; // Largeur du TableauA
> > $couleurBordTableauA="#bbbbbb"; // Couleur de la bordure du TableauA
> > $couleurFondEnteteTableauA="#A3DEF1"; // Couleur de fond de la ligne d'entête du tableauA
> > $policeEnteteTableauA="verdana"; // Police utilisée dans la ligne d'entête du tableauA
> > $couleurPoliceEnteteTableauA="#000000"; // Couleur de la police utilisée dans la ligne d'entête du tableauA
> > $couleurFondLigneNomAuteurTableauA="#F6F6F6"; // Couleur de fond des lignes "Nom de l'auteur"
> > $policeLignesNomAuteurTableauA="verdana"; // Police utilisée dans les lignes "Nom de l'auteur"
> > $couleurPoliceLignesNomAuteurTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Nom de l'auteur"
> > $couleurFondLigneCommentaireTableauA="#ffffff"; // Couleur de fond des lignes "Commentaire"
> > $policeLignesCommentairesTableauA="times"; // Police utilisée dans les lignes "Commentaire"
> > $couleurPoliceLignesCommentairesTableauA="#000000"; // Couleur de la police utilisée dans les lignes "Commentaire"
> >
> > $NombreComParPage=10; // Nombre maximum de commentaires à afficher dans le tableau (par page)
> > $NombreMaxPages=20; // Nombre maximum de pages de commentaires susceptibles d'être affichées
> >
> > // === Paramètres d'affichage du TableauB (affichage du formulaire permettant d'ajouter un nouveau commentaire) ===
> >
> > $largeurTableauxB="80%"; // Largeur du TableauB
> > $couleurBordTableauB="#bbbbbb"; // Couleur de la bordure du TableauB
> > $couleurFondEnteteTableauB="#A3DEF1"; // Couleur de fond de la ligne d'entête du tableauB
> > $policeEnteteTableauB="verdana"; // Police utilisée dans la ligne d'entête du tableauB
> > $couleurPoliceEnteteTableauB="#000000"; // Couleur de la police utilisée dans la ligne d'entête du tableauB
> > $couleurFondFormulaireTableauB="#F6F6F6"; // Couleur de fond de la cellule affichant le formulaire
> > $policeFondFormulaireTableauB="verdana"; // Police utilisée dans la cellule affichant le formulaire
> > $couleurPoliceFondFormulaireTableauB="#000000"; // Couleur de la police utilisée dans la cellule affichant le formulaire
> >
> > // === Paramètres destinés au contrôle des messages postés (dispositif "anti-piratage") ===
> >
> > $longueurMaxCommentaires="10000"; // Nombre maximum de caractères pouvant être postés dans un commentaire
> > $longueurMaxMots="50"; // Nombre maximum de caractères par "mot" (ce dispositif permet d'empêcher une éventuelle augmentation incontrôlée de la largeur des tableaux)
> >
> > // #####################################################################################
> >
> > // #####################################################################################
> > // ****************************************************************************************
> > // Vérification du nombre de caractères envoyés dans le commentaire éventuellement posté.
> > // (certains utilisateurs mal intentionnés pourraient être tentés d'envoyer des commentaires
> > // comportant un très grand nombre de caractères, dans le but de ralentir le temps
> > // d'affichage du livre d'or)
> > // ****************************************************************************************
> >
> > if((@ strlen($n)>$longueurMaxCommentaires) or (@ strlen($c)>$longueurMaxCommentaires)) {
> > print("Désolé, la taille maximale des commentaires pouvant être postés est limitée à $longueurMaxCommentaires caractères.<br>\n");
> > print("<a href=\"index.php\">Retour au Livre d'Or</a>\n");
> > exit;
> > }
> > // #####################################################################################
> >
> > // #####################################################################################
> > // ***********************************************************************************
> > // Création du fichier livre.dat s'il n'existe pas
> > // ***********************************************************************************
> >
> > if(!file_exists("livre.dat")) {
> > $idFicLivre=fopen("livre.dat","w+");
> > fputs($idFicLivre,"Fichier Index. Ne pas éditer !\n");
> > fclose($idFicLivre);
> > }
> >
> > if(!isset($c)) $c="";
> > if(!isset($n)) $n="";
> > if(!isset($p)) $p="";
> >
> > // ***********************************************************************************
> > // Définition de la fonction coupeMotsLongs($chaine,$ncaracteres) destinée à découper
> > // mots contenants plus de $ncaracteres caractères.
> > // (certains utilisateurs envoient parfois des textes contenant des mots très long,
> > // ce qui a pour effet d'altérer la structure d'affichage des tableaux)
> > // ***********************************************************************************
> >
> > function coupeMotsLongs($chaine,$ncaracteres) {
> > $chaineRes=$chaine;
> > while(ereg("([^ ]{".$ncaracteres."})[^ ]",$chaineRes,$corres)) {
> > $partRep=$corres[1];
> > $chaineRes=ereg_replace($partRep,$partRep." <br> ",$chaineRes);
> > }
> > return($chaineRes);
> > }
> >
> > // ***********************************************************************************
> > // Nettoyage et enregistrement des nouveaux commentaires envoyés lors de l'appel du script
> > // ***********************************************************************************
> >
> > if ($c and $n) {
> >
> > // détermination de la date
> > $tdate=getdate();
> > $jour=sprintf("%02.2d",$tdate["mday"])."/".sprintf("%02.2d",$tdate["mon"])."/".$tdate["year"];
> > $heure=sprintf("%02.2d",$tdate["hours"])."H".sprintf("%02.2d",$tdate["minutes"]);
> > $d=$jour." à ".$heure;
> >
> > // nettoyage du nom
> > $n=phplentities($n);
> > $n=stripslashes($n);
> > $n=trim($n);
> >
> > // nettoyage du commentaire
> > $c=phplentities($c);
> > $c=str_replace(chr(10)," <br> ",$c);
> > $c=str_replace(chr(13),"",$c);
> > $c=stripslashes($c);
> > $c=trim($c);
> >
> > $idFicLivreCom=fopen("livre.dat","a+");
> > fputs($idFicLivreCom,$n); // 1ère ligne
> > fputs($idFicLivreCom,"|"); //
> > fputs($idFicLivreCom,$d."|\n"); //
> > fputs($idFicLivreCom,$c."\n"); // 2ème ligne
> > fclose($idFicLivreCom);
> >
> > }
> >
> > // ***********************************************************************************
> > // Lecture des messages déjà postés dans le livre, et stockage des données
> > // dans les tableaux $nom et $commentaire
> > // ***********************************************************************************
> >
> > $TabLivre=file("livre.dat");
> > $nLignesTabLivre=count($TabLivre)-1;
> > $nCommentaires=$nLignesTabLivre/2;
> >
> > for($compt=1;$compt<=$nCommentaires;$compt++) {
> > $nom[$compt]=trim(stripslashes(strtok($TabLivre[($compt*2)-1],"|")));
> > $date[$compt]=trim(stripslashes(strtok("|")));
> > $commentaire[$compt]=trim(stripslashes($TabLivre[($compt*2)]));
> > }
> >
> > // ***********************************************************************************
> > // Affichage d'un message de remerciement au cas ou un commentaire a été envoyé en même
> > // temps que l'appel du script
> > // ***********************************************************************************
> >
> > if($n and $c) {
> > print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
> > print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
> > print("<center> \n");
> > print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
> > print("<b>Merci pour votre participation !</b> \n");
> > print("</font> \n");
> > print("</center> \n");
> > print("</td></tr> \n");
> > print("</table> \n");
> > print("<br> \n");
> > }
> >
> > // ***********************************************************************************
> > // Affichage des commentaires déjà postés dans un tableau
> > // ***********************************************************************************
> >
> > if(!$p) {
> > $p=1; // $p représente le numéro de la page de commentaire à afficher : par défaut, $p=1
> > }
> >
> > if($nCommentaires>0) {
> >
> > print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxA\" align=\"center\" bgcolor=\"$couleurBordTableauA\"> \n");
> > print("<tr><td> \n");
> >
> > print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
> >
> > print("<tr> \n");
> > print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"30\"> \n");
> >
> > if($nCommentaires>$NombreComParPage) {
> > print("<center> \n");
> > print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
> > print("<b>pages</b>   \n");
> > print("<b> \n");
> > for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
> > if($a==$p) print("$a   \n");
> > else print("<a href=\"index.php?p=$a\">$a</a>   \n");
> > }
> > print("</b> \n");
> > print("</font> \n");
> > print("</center> \n");
> > }
> >
> > print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
> > print("<center> \n");
> > print("<b><a href=\"#ajout\">ajouter un nouveau commentaire</a></b> <br> \n");
> > print("</center> \n");
> > print("</font> \n");
> > print("</td> \n");
> > print("</tr> \n");
> >
> > for($compt=($nCommentaires-(($p-1)*$NombreComParPage));$compt>=max(1,($nCommentaires-($p*$NombreComParPage)+1));$compt--) {
> > print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\"> \n");
> > print("<table> \n");
> > print("<tr> \n");
> > print("<td width=\"10\"> </td> \n");
> > print("<td> \n");
> > print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"><b>".coupeMotsLongs($nom[$compt],$longueurMaxMots)."</b> a écrit, le ".$date[$compt]." :</font> \n");
> > print("</td> \n");
> > print("</tr> \n");
> > print("</table> \n");
> > print("</td></tr> \n");
> > print("<tr><td bgcolor=\"$couleurFondLigneCommentaireTableauA\"> \n");
> > print("<table> \n");
> > print("<tr> \n");
> > print("<td width=\"20\"> </td> \n");
> > print("<td> \n");
> > print("<font face=\"$policeLignesCommentairesTableauA\" color=\"$couleurPoliceLignesCommentairesTableauA\">".coupeMotsLongs($commentaire[$compt],$longueurMaxMots)."</font>\n");
> > print("</td> \n");
> > print("</tr> \n");
> > print("</table> \n");
> > print("</td></tr> \n");
> > }
> >
> > if(($nCommentaires>$NombreComParPage) and $p<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1))) {
> > print("<tr> \n");
> > print("<td bgcolor=\"$couleurFondEnteteTableauA\" height=\"20\"> \n");
> > print("<center> \n");
> > print("<font face=\"$policeEnteteTableauA\" color=\"$couleurPoliceEnteteTableauA\" size=\"-2\"> \n");
> > print("<b>pages</b>   \n");
> > print("<b> \n");
> > for($a=1;$a<=min($NombreMaxPages,floor((($nCommentaires-1)/$NombreComParPage)+1));$a++) {
> > if($a==$p) print("$a   \n");
> > else print("<a href=\"index.php?p=$a\">$a</a>   \n");
> > }
> > print("</b> \n");
> > print("</font> \n");
> > print("</center> \n");
> > print("</td> \n");
> > print("</tr> \n");
> > }
> >
> > print("</table> \n");
> >
> > print("</td></tr> \n");
> >
> > print("</table> \n");
> >
> > print("<br> \n");
> >
> > }
> >
> > // *********************************************************************************************
> > // Affichage d'un message d'avertissement au cas où aucun commentaire n'a été encore été envoyé
> > // *********************************************************************************************
> >
> > if($nCommentaires<1) {
> > print("<table align=\"center\" width=\"$largeurTableauxA\" border=\"1\"> \n");
> > print("<tr><td bgcolor=\"$couleurFondLigneNomAuteurTableauA\" height=\"30\"> \n");
> > print("<center> \n");
> > print("<font face=\"$policeLignesNomAuteurTableauA\" color=\"$couleurPoliceLignesNomAuteurTableauA\" size=\"-1\"> \n");
> > print("<b>Le livre d'or ne comporte encore aucun commentaire.</b> \n");
> > print("</font> \n");
> > print("</center> \n");
> > print("</td></tr> \n");
> > print("</table> \n");
> > print("<br> \n");
> > }
> >
> >
> > // ***********************************************************************************
> > // Affichage du formulaire permettant de poster un nouveau commentaire
> > // ***********************************************************************************
> >
> >
> > print("<a name=\"ajout\"></a>");
> >
> > print("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" width=\"$largeurTableauxB\" align=\"center\" bgcolor=\"$couleurBordTableauB\"> \n");
> > print("<tr><td> \n");
> >
> > print("<table border=\"0\" width=\"100%\" cellspacing=\"1\" align=\"center\" cellpadding=\"5\"> \n");
> >
> > print("<tr> \n");
> > print("<td bgcolor=\"$couleurFondEnteteTableauB\" height=\"30\"> \n");
> > print("<font face=\"$policeEnteteTableauB\" color=\"$couleurPoliceEnteteTableauB\" size=\"-1\"> \n");
> >
> > if($nCommentaires>0) print("<b><center>Ajouter un nouveau commentaire :</center></b> \n");
> > else print("<b><center>Envoyer un premier commentaire :</center></b> \n");
> >
> > print("</font> \n");
> > print("</td> \n");
> > print("</tr> \n");
> >
> > print("<tr><td bgcolor=\"$couleurFondFormulaireTableauB\"> \n");
> > print("<form method=\"POST\"action=\"index.php\"> \n");
> > print("<center> \n");
> > print("<br> \n");
> > print("<font face=\"$policeFondFormulaireTableauB\" color=\"$couleurPoliceFondFormulaireTableauB\" size=\"-1\"> \n");
> > print("<b>Votre nom</b> :  \n");
> > print("</font> \n");
> > print("<input type=\"text\" name=\"n\" size=\"22\"> \n");
> > print("<br><br> \n");
> > print("<textarea rows=\"6\" name=\"c\" cols=\"40\" wrap=\"virtual\"></textarea> \n");
> > print("<br> \n");
> > print("<input type=\"submit\" value=\"Envoyer !\" name=\"B1\"> \n");
> > print("</form> \n");
> > print("</td></tr> \n");
> >
> > print("</table> \n");
> >
> > print("</td></tr> \n");
> > print("</table> \n");
> >
> > // #####################################################################################
> > ?>
> >
> >
> >
> >
> >
> >
> > Je connais pas du tout le php, mais il me semble que si je faisais un truc comme ça, ça pourrait marcher :
> >
> >
> > CODE :
> >
> > if(!file_exists("livre.dat")) {
> > $idFicLivre=fopen("livre.dat","w+");
> > fputs($idFicLivre,"Fichier Index. Ne pas éditer !\n");
> > fclose($idFicLivre);
> > }
> >
> >
> > Bon, là, il verifie, l'existence du "livre.dat".
> > Ce que je pensais, c'est qu'il suffirait de lui demander de vérifier s'il existe un rep du nom de : "nom de la page d'où vient le script".
> > Si oui, niquel, il va dans ce rep et ouvre le "livre.dat" pour faire ce qu'il a à y faire.
> > Si non, il crée ce fameux repertoire et un nouveau "livre.dat"
> >
> > Apres, il reste plus qu'a modifier deux ou trois chemin d'accés dans le code en remplaçant /livre.dat par une-variable-contenant-le-nom-de-la-page-donc-du-rep/livre.dat
> >
> >
> > Cela me semble possible, mais bon, comme je ne connais pas le php, je peux pas dire...
> > Ca vous semble pas possible ma manière de voir les choses ?
> >
> >
> > J'espere que vous pourrez m'aider, merci d'avance.
> > A bientôt.
> > Florent
> >
>
lundi 2 juin 2003 à 13:57:23 | Re : Créer un repertoire et modifier un script

ElGaunt

Merci beaucoup, ca va m'aider je pense.
Par contre, j'aimerais récupérer pour le nom de mon dossier le nom de la page où est executé le script, qui commence comme ça :
<html>
<head>
<title>Nom de la page</title>
</head>


C'est possible ?





> > mkdir("dossier") pour créer un dossier
> >
> > et ce genre de truc à modifier, ça prend quand même pas mal de temps, essaie donc de le faire par toi-même...
> >
> >
> > comme ça t'apprendra en plus ;-p



Cette discussion est classée dans : rep, print, livre, commentaire, dat


Répondre à ce message

Sujets en rapport avec ce message

Google Print : OCR [ par GRenard ] Yo tout le monde, vous avez vu la sorti de google print ? (http://print.google.com) sorti hier (ou avant hier pour certains). Si vous regardez, vous p Commentaire sur un Lien [ par Bowlest ] Bonjour,Mon problème est tout simple, j'ai un lien, et je voudrais faire apparaitre un commentaire (ou une bulle si vous preferez) sur celui ci, comme probleme de if......Else [ par osnakes ] Bonjour, voila je suis debutant et j'ai un souci !!apres avoir teste en ligne 22 si la saisie du pseudo et mot de passe sont correct, je voudrais (si probleme de session [ par michelvernet2 ] bonjour, ci dessous 2 petits scripts pour afficher la session php en cours. chez moi, session_id() est bien identique page a.php et page b.php, sans s demande aide transfert fichier vers le serveurs apache(redhat9) [ par mohamedjayed ] j'ai  utilisé ce script pour envoyer des fichiers vers le serveur (upload)ca marche avec des fichiers de taille moins de 600 ko  mais plus de ca ca ma Commentaire en HTML [ par flasher_13 ] Je sais que en PHP c'est possible, mais moi je le cherche en HTML, est-ce qu'il y à un moyen de trouvé un script comme ça? probleme de date en livre d'or [ par jennet ] j'essaie de  faire un livre d'or et je recupere la date avec la fonction $date= date().et puis  j'insere $date dans la base de données mais quand j'af Test si c'est un repertoire ou un fichier !! [ par rich25200 ] Bonjour, Je comprends rien !! enfin bon si mais je sais pas pk il reagit comme ca.... Je vous explique j'ai du code pour tester si c'est un repertoi Probleme avec les repertoire !!!!!! [ par rich25200 ] Bonjour, J'ai ce code (voir ci dessous) qui considere que je n'ai que des fichiers sur mon repertoire !! Meme s'il y a un repertoire il le prend comm Recherche dans MySQL impossible !! [ par freddy1787 ] Salut,Sa fait 2jours que je me prend la tete sur 10lignes de code et j'arrive pas a voir la faute!!!Function recherchet($id,$search){require("conf1.ph


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,764 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales