Page 1 sur 3

Redirection d'un site grace a un formulaire

Posté : 26 août 2006, 21:04
par nicox1
Deja je ne sais pas si j'ai posté le sujet eu bonne endroit :s

Je voudrai un script qui genere un dossier et un fichier

Code : Tout sélectionner

index.htm
qui contient un script de redirection.

Je voudrai que le dossier generer ai comme nom un nom predefinit auparavent par un formulaire.
Et je voudrai que dans ce dossier soit generer un fichier

Code : Tout sélectionner

index.htm
qui comporte un script de redirection ou il manque l'adresse a rediriger soit combler par un champ dans ce meme formulaire


APERCUT: formulaire
Met ici le nom de ta redirection

Code : Tout sélectionner

(http://monnomdedomaine.com/nom de ta redirection
*nom de redirection correspond au nom du dossier qui vas etre generé
Met ici l'adresse de ton site (http://.....) *l'adresse de son site correspond a l'adresse a rediriger dans le fichier

Code : Tout sélectionner

index.htm
J'espere avoir été claire ! ! !

[/code]

Posté : 26 août 2006, 21:18
par thehawk
d'apres ce que je vois tu veux que l on te donne le code tout fait ....
Eh bien non !

Dans un premier temps renseigne toi comme cree un fichier , puis un dossier
va voir ici ca peu t aider ... :

http://www.phpfrance.com/tutoriaux/inde ... ichiers-ii
http://www.phpfrance.com/tutoriaux/inde ... s-fichiers

...

Posté : 27 août 2006, 09:54
par nico-x1
Non dsl j'ai oublier de mettre ce que j'avais fait je sais faire la redirection grace a header() non ce que je sais pas faire c'est generer un dossier :)

mais bon ce que j'ai mit c'etait pour etre claire :P car sinon je vous aurez embrouiller ^_^ je me connais, merci pour les lien :)

Posté : 27 août 2006, 10:05
par Cyrano
Pour créer un répertoire, utilise mkdir()

Posté : 27 août 2006, 13:34
par jojolapine
et il n'y a pas de "e" à clair

Posté : 27 août 2006, 13:44
par Ryle
Pour de la doc sur les systèmes de fichiers (et sur n'importe quelle fonction php d'ailleurs), tu peux aussi regarder sur le site de php.net. Tu y trouveras toutes les fonctions et les infos nécessaires à leur utilisation : http://fr.php.net/manual/fr/ref.filesystem.php

Sinon, soit dit en passant, si tu fais un fichier en ".htm", la fonction header() ne sera probablement pas interprétée; il te faudra soit opter pour un .php, soit choisir une redirection html (meta) ou javascript :)

Jojo >> Pas forcément, il s'appelle peut être Claire en vrai, ou veut lui ressembler ? .. bon ok je sors .. ;)

Merci tout le monde

Posté : 27 août 2006, 14:23
par NICO-X1
jai fait un script avec vos information merci :=)
mais mon hebrgeur a un blem mysql donc je peux pas tester ^_^

clair* :=)

Beug O_o

Posté : 28 août 2006, 16:43
par nico-x1
Quelqu'un peux m'aider alors j'ai creer une table inscription bon alors je fait inscrire mon membre et avant la cloture de la base mysql je veux rajouter la creation du dossier et du fichier alors j'ia taper cela:
....
21//Je fait le dossier
22   mkdir("$pseudo",0777); 
23 
24//Je fait un fichier index.htm dans le dossier redirection
25$blog_install = fopen(''.$user->pseudo.'/index.html','x'); 
26fwrite($blog_install,'<meta http-equiv=Refresh 
27content=1;URL='.$ligne->site.') ; 
28fclose($blog_install);
29
30//on ferme la connexion
31mysql_close();
32 ?..>
  
Et l'erreur qu'il me marque c'est qu'ila y a une erreur ligne23 ! ! !

Posté : 28 août 2006, 17:08
par thehawk
enleve les double quote (") je pense que ce sera bon ...
si ca marche pas mets en au niveua e 0777
mkdir($pseudo,0777);  
ou mkdir("$pseudo","0777");
ou mkdir($pseudo,0777);  
je ne sait plus lequel est le bon si l erreur est la bien sur

Posté : 28 août 2006, 17:37
par Ryle
la syntaxe du mkdir est bonne, suffit de vérifier si le dossier est bien créé pour s'en assurer. Si ce n'est pas le cas, soit le problème est situé plus haut, soit $pseudo ne contient rien. C'est quoi le message d'erreur (la réponse est souvent dedans :)) ?

Est ce que $pseudo contient la même chose que $user->pseudo ?
Le mode 'x' créer un fichier et l'ouvre en lecture seule.. c'est peut être pas ce qu'il y a de mieux pour écrire dedans ;)

beug ^_^

Posté : 28 août 2006, 17:52
par nico-x1
Bon j'ai apporter certainne modification suite a vos message est a ma reflection mais la je cale encore une fois oui lors de la creation du fichier sa bidouille :s
1<?
2// connexion à la base de données
3$db = mysql_connect('localhost', 'nico-x1', '')
4or die('connexion impossible');
5
6// sélection de la base
7mysql_select_db('nicox1_db',$db);
8
9//J'identifie les variables
10$pseudo = $_POST["pseudo"];
11$pass = $_POST["password"];
12$site = $_POST["urlsite"];
13$urlredi = $_POST["urlredi"];
14
15//J'envoie la requête d'insertion des données
16mysql_query("INSERT INTO inscription VALUES('','$pseudo','$password','$urlsite','$urlredi')"); 

//Je récupère les données du formulaire
echo "Merci de votre inscription,votre profil est $pseudo $password $urlsite $urlredi";

//Je fait le dossier 
mkdir($pseudo,0777 
  
//Je fait un fichier index.htm dans le dossier redirection 
$redi_install = fopen(''.$pseudo->pseudo.'/index.html','x');  
fwrite($redi_install,'<meta http-equiv=Refresh  
content=1;URL='.$ligne->urlsite.') ;  
fclose($redi_install); 

//on ferme la connexion 
mysql_close();
?>

Voila l'erreur:

Code : Tout sélectionner

Parse error: parse error in /data/members/free/multimania/fr/n/i/c/nicox1/htdocs/inscription.php on line 25

Heu voila je dois etaindre mon ordinateur car je suis en conflit d'IP faut rebooter la live box ^_^

Posté : 28 août 2006, 17:55
par thehawk
petite erreur
mkdir($pseudo,0777   == > mkdir($pseudo,0777);

beug

Posté : 28 août 2006, 18:16
par nico-x1
J'ai fai ta modification mais maintenent voila l'erreur qu'il me dit:

Code : Tout sélectionner

Parse error: parse error in /data/members/free/multimania/fr/n/i/c/nicox1/htdocs/inscription.php on line 32
Et la ligne 32 correspond a la fin du code ?>
sur frontpage je fait clic droit propriété de la balise et la balise en question est de <META a ?> je suis sur que l'erreur est dans les ligne qui suit meta mais jarrive pas a y trouver sachant que c'est du javascript peut etre que je devrai utiliser un autre language :s
et aussi changer

Code : Tout sélectionner

$redi_install = fopen(''.$pseudo->pseudo.'/index.html','x');
en un mode adapter a l'ecriture et je pense que ce mod c'est 'r' non?

beug modifiaction

Posté : 28 août 2006, 18:20
par nico-x1
Heu plutot le mod r+ non?

Posté : 28 août 2006, 18:22
par thehawk
l'erreur viendrait d'un "}" manquant ou en trop ...