-
Compteur de contenus
442 -
Inscrit(e) le
-
Dernière visite
Messages postés par MS-DOS_1991
-
-
Juste un petit mot pour dire que les fonctions preg_* sont beaucoup plus rapides à exécuter que les fonctions ereg_*
-
comment faire ?
dans PHP
Voici ce que j'ai trouvé: FAQ PHP sur Développez.com .
Pour Windows, il faudra donc que tu fasse un str_replace("\n", "\r\n", $config) avant de renvoyer le fichier
-
comment faire ?
dans PHP
mais $hash ça renvoit quoi?<{POST_SNAPBACK}>
Dans la variable $hash, tu stockerait un "hash", c'est-à dire une chaîne de caractères qui identifierait précisément le visiteur (un hash par visiteur). Quelques posts au-dessus, je t'indique comment je ferais:
<?php
session_start();
[...]
$hash = md5(microtime().session_id());Tu concatènerais ensuite ce hash au nom de ton fichier On aurait donc un fichier par utilisateur et plus de risques qu'un utilisateur obtienne le fichier d'un autre
copy('config.txt', 'config_'.$hash.'.txt'); // creation du fichier avec le contenu de config.txt
[...] // tes opérations sur le fichier + envoi vers ton utilisateur par emailEnsuite bien évidemment, tu supprimes le fichier de ton utilisateur (rien de plus simple avec unset() ) et ... c'est tout
unlink('config_'.$hash.'.txt');
?>le code complet:
<?php
session_start();
[...]
$hash = md5(microtime().session_id());
copy('config.txt', 'config_'.$hash.'.txt'); // creation du fichier avec le contenu de config.txt
[...] // tes opérations sur le fichier + envoi vers ton utilisateur par email
unlink('config_'.$hash.'.txt');
?> -
comment faire ?
dans PHP
parce que c'est un fichier de configuration d'eggdrop qui doit porter le nom config.txt et j'ai pas très bien compris la technique que tu me dis.Et si je créé un répertoire unique a un user, j'envoi le fichier config.txt qui se trouve dans le répertoire unique et je supprime le répertoire unique ????
<{POST_SNAPBACK}>
Oui, c'est le principe de ma méthode, seulement la tienne est plus longue et plus "compliquée" car tu dois:
- créer un répertoire unique
- Créer un fichier config.txt
- Envoyer ton fichier
- Supprimer le fichier
- Supprimer le répertoire
...alors qu'avec la mienne tu ne fais que:
- Créer un fichier config_$hash.txt
- Envoyer ton fichier
- Supprimer le fichier
edit: Ca me paraît cependant être la moins mauvaise solution, vu que tu ne peux pas changer le nom de ton fichier...
Enfin après, c'est ton script tu fais comme tu veux
- créer un répertoire unique
-
comment faire ?
dans PHP
A mon avis, le plus simple est pourtant de stocker ton hash md5 dans une variable $hash, puis d'envoyer à ton utilisateur le fichier config_$hash.txt que tu supprime avec unset() ensuite...
Pourquoi dois-tu absolument utiliser config.txt comme nom de fichier ?
-
comment faire ?
dans PHP
huuuum ok mais sur un site ( http://www.eggdrop-fr.org/autoconf.php ) on ne rencontre jamais d'erreur et on ne reçoit jamais le fichier d'une autre personne, comment ils font ???<{POST_SNAPBACK}>
Pourquoi ne crées-tu pas un fichier à partir de ton config.txt que tu renommes ensuite en config_md5(microtime().session_id()).txt (un nom unique quoi) ?
Comme ça, plus de risques de collisions entre 2 utilisateurs
-
comment faire ?
dans PHP
mais si je fais flock() un des deux visiteurs qui a envoyé le formulaire en même temps que l'autre va rencontrer une erreur non?<{POST_SNAPBACK}>
Oui, tu peux par exemple lui afficher un message d'erreur lui demandant de retenter un peu plus tard
-
comment faire ?
dans PHP
Jettes un oeil du côté de flock() qui te permet de verrouiller un fichier
-
Il existe des fonctions toutes prêtes pour faire ceci, comme par exemple sprintf
-
Au temps pour moi
Je me disais bien que c'était bizarre comme technique
-
Salut
Juste une petite question: à quoi cela sert-il de renommer un répertoire en nom de fichier avec une extension ?
Je conçois qu'on veuille faire l'inverse (fichier.php en répertoire) mais là, je ne vois pas
-
Salut
J'obtiens la même erreur sur un Dotclear avec Rewriting d'URLs (ici)
Dans mon cas, c'est à cause des rêgles suivantes:
DirectoryIndex index.php index.html
Options +MultiViews
RewriteEngine On
RewriteCond %{REQUEST_URI} !robots.txt
RewriteCond %{REQUEST_URI} !index.xml
RewriteCond %{REQUEST_URI} !favicon.png
RewriteCond %{REQUEST_URI} !ascreen.jpg
RewriteCond %{REQUEST_URI} !googled5a644cc165a55fb.html
RewriteCond %{REQUEST_URI} !labels.rdf
RewriteCond %{REQUEST_URI} !logs
# Repertoires de Dotclear
RewriteCond %{REQUEST_URI} !ecrire
RewriteCond %{REQUEST_URI} !conf
RewriteCond %{REQUEST_URI} !images
RewriteCond %{REQUEST_URI} !inc
RewriteCond %{REQUEST_URI} !l10n
RewriteCond %{REQUEST_URI} !layout
RewriteCond %{REQUEST_URI} !share
RewriteCond %{REQUEST_URI} !themes
RewriteCond %{REQUEST_URI} !ie7
RewriteCond %{REQUEST_URI} !index
RewriteRule (.*)$ /index.php/$1En fait, je redirige toutes les requêtes (même les 404) vers ma page d'index qui fait le tri
-
appel d'une page
dans PHP
sympa d'avoir repondu aussi vitej'ai un mess d'erreur:
Parse error: parse error in c:\program files\easyphp1-8\www\sites\@web\public\fonction.php on line 317
comment dois je l'integrer a mon fichier php entre des balises <script></script>?
if ( $nb_membre > 0)
{
$_SESSION['login']=$_POST['login'];
<script language="JavaScript" type="text/JavaScript">
window.location = 'fichier.php';
</script>
}<{POST_SNAPBACK}>
C'est normal: les balises html ne sont pas reconnues comme du code php per l'interpréteur (normal d'ailleurs)
Essaies comme ceci:
<?php
[...]
if ($nb_membre > 0)
{
$_SESSION['login']=$_POST['login'];
?>
<script type="text/javaScript">window.location = 'fichier.php';</script>
<?php
}
[...]
?> -
appel d'une page
dans PHP
Salut
Essaies peut-être:
window.location = 'fichier.php';
-
premier problème : il y a un petit texte qui s'affiche en bas de la page alors que normalement il doit "cacher " le formulaire une fois que celui ci est valider
par "cacher", tu veux dire "remplacer le formulaire" ?
Si c'est le cas, tu dois mettre la ligne echo ' un mail de confirmation va arrivé'; entre les accolades de la condition if(isset($_POST['inscription']))
Sinon, je ne comprends pas : tu as deux fois la même condition
if(isset($_POST['inscription']))
dans ton code, avec aucun code dans la première, où tu devrais normalement avoir toutes tes vérifications
-
OK c'est bon. Excuse-moi, j'ai simplement oublié de recharger la page. C'est con je sais lol.
<{POST_SNAPBACK}>
Merci pour ton aide.<{POST_SNAPBACK}>
De rien
A bientôt sur le Forum
-
Bizarre, pourtant ça marche chez moi
Quel navigateur utilises-tu ?
edit: je sais: j'ai fait 2 erreurs que j'ai ensuite corrigé sans y penser:
- Oubli d'un " dans <script type="text/javascript">
- Mauvaise synthaxe de CDATA (ça marche sans)
- Oubli d'un " dans <script type="text/javascript">
-
Salut
<form method="post" action="">
<p><input type="text" name="message" id="message" size="50" /></p>
<p><input type="submit" value="ok" /></p>
</form>
<script type="text/javascript">
<![CDATA[
document.getElementById('message').focus();
]]>
</script>devrait marcher
-
Bonjour
Un petit lien pour t'aider à choisir: Les couleurs du Web (Merci Webmaster-Hub )
-
je n'aime pas trop, niveau référencement et niveau accessibilité tes pages sont trop longues.
Pense à Msn qui n'aime pas trop plus de 2 tirets dans les noms de fichiers.
Voilà ma suggestion :
* Catégories: /categorie-18/titre-de-la-categorie/page-1.html
* Forums: /forum-25/titre-du-forum/page-6.html
* Sujets: /sujet-785/titre-du-sujet/page-5.html
Maintenant tu peux aussi avoir un tableau de correspondance plus poussé te permettant d'écrire:
* Catégories: /titre-de-la-categorie/page-1.html
* Forums: /titre-du-forum/page-6.html
* Sujets: /titre-du-sujet/page-5.html
<{POST_SNAPBACK}>
J'avais pensé à la 2ème solution, mais l'avais abandonnée car je dois récupérer l'id dans l'URL
Je pense que je vais cumuler ta solution et la mienne:
- Catégories: /18-titre-de-la-categorie/page-1.html
- Forums: /25-titre-du-forum/page-6.html
- Sujets: /785-titre-du-sujet/page-5.html
Je vous tiens au courant
- Catégories: /18-titre-de-la-categorie/page-1.html
-
Merci de ta réponse
Je me disais bien que seul Google comprendrait ma logique
Je n'ai mis les doubles tirets que pour marquer la séparation entre les différents paramètres de l'URL, pour le "confort" des yeux des utilisateursAutre remarque : tes doubles tirets n'ont aucun interet, tu n'en a pas besoin pour matcher tes paramètres... -
Bonjour à tous
Je code actuellement un forum (PHP/MySQL) et je voudrais que les pages soient accessibles par les URLs suivantes:
- Catégories: /categorie-18--titre-de-la-categorie--page-1.html
- Forums: /forum-25--titre-du-forum--page-6.html
- Sujets: /sujet-785--titre-du-sujet--page-5.html
J'ai déjà écrit mes rêgles de .htaccess:
RewriteRule categorie-([0-9]+)--([a-z0-9-]+)--page-([0-9]+).html$ index.php?view_cat=$1&urlized_title=$2&page=$3 [L]
RewriteRule forum-([0-9]+)--([a-z0-9-]+)--page-([0-9]+).html$ index.php?view_forum=$1&urlized_title=$2&page=$3 [L]
RewriteRule sujet-([0-9]+)--([a-z0-9-]+)--page-([0-9]+).html$ index.php?view_topic=$1&urlized_title=$2&page=$3 [L]Maintenant, je m'interroge sur le futur référencement: les moteurs de recherche vont-ils indexer des URLs qui comportent le double "-" ?
Merci d'avance pour vos contributions
- Catégories: /categorie-18--titre-de-la-categorie--page-1.html
-
Salut
Remplaces tes caractères accentués (éèê àâ îïì, etc) par leurs équivalents web:
é ==> é
è ==> è
ê ==> ê
...
Remplace e par les autres lettres (ex: â ==> â)
-
Salut
Bon, pour tes erreurs de validation, tout est expliqué en détail dans le rapport du W3C:
Erreur à la colonne 1206: type de document ne permet pas l'élément "META" ici(Balise imbriquée au mauvais endroit selon la norme utilisée. Veuillez regarder les règles d'imbrication propre à cette balise.)
Toute balise meta doit être placée dans la section <head> de ton document html.
De plus, comme c'est une balise unique, elle doit se terminer par /> et non >
<script language="JavaScript">
Erreur à la colonne 29: attribut requis "TYPE" non spécifié
(Il manque un attribut obligatoire selon la norme utilisée.)
Encore une fois, tout est dit: tu doit utiliser l'attribut type="text/javascript" et non plus l'attribut language qui est déprécié
La balise embed n'est plus standard, bien qu'elle soit encore exclusivement reconnue par certains navigateurs ...<embed src="sitepicturedesk.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="600" height="800"></embed>
Erreur à la colonne 19: il n'y a pas d'attribut "SRC"
(L'attribut n'existe pas pour cette balise.)
Erreur à la colonne 49: il n'y a pas d'attribut "QUALITY"
(L'attribut n'existe pas pour cette balise.)
Erreur à la colonne 68: il n'y a pas d'attribut "PLUGINSPAGE"
(L'attribut n'existe pas pour cette balise.)
Erreur à la colonne 119: il n'y a pas d'attribut "TYPE"
(L'attribut n'existe pas pour cette balise.)
Erreur à la colonne 157: il n'y a pas d'attribut "WIDTH"
(L'attribut n'existe pas pour cette balise.)
Erreur à la colonne 170: il n'y a pas d'attribut "HEIGHT"
(L'attribut n'existe pas pour cette balise.)
Erreur à la colonne 175: élément "EMBED" indéfini
(Balise inconnue. Vérifier que la balise est en minuscule pour les documents XHTML ou que la balise existe selon le DTD spécifié.)
... et de même pour tes quelques autres erreurs
Y a t'il une faille là dedans?
dans PHP
Posté
Salut
Pas besoin de faire des tests pour vérifier le contenu de ta variable puisque tu ne vérifie ici que son existence
Plus tard dans ton script, bien sûr tu devras vérifier qu'elle répond à un format précis, puis l'échapper avant de l'insérer dans ta BDD, mais pour l'instant, pas besoin de htmlentities
P.S: Tu peux simplifier ton script en enlevant certaines parenthèses redondantes: