Page 1 sur 2

création dossier

Posté : 20 déc. 2006, 14:29
par tilillois
bonjour a tous
je voudrai savoir s'il est possible de créer automatiquement un dossier lors d'un upload,que ce dossier porte le non du pseudo de la personne qui upload et que le fichier uploader ce met automatiquement dans ce dossier??
s'il il existe un tuto la dessus je me ferai un plaisir de le lire
merci pour vos reponses

tillillois :wink:

Posté : 20 déc. 2006, 14:31
par Ajoloca
Bonjour,

Regarde la doc de mkdir()

re cr&etion dossier

Posté : 20 déc. 2006, 14:37
par tilillois
merci
ça a pas l'air trop complexe ,vais essayé
merci :wink:

création dossier

Posté : 20 déc. 2006, 15:49
par tilillois
bon j'ai teste mais ça marche pas
voila mon script
<?php
  mkdir ("mon_dossier", 0777);
?> 
la j'ai fait simple pour essayé ,je décortiquerer plus tard :D
voila ce que ça me repond en msg d'erreur

Warning: mkdir() [function.mkdir]: SAFE MODE Restriction in effect. The script whose uid is 3400889 is not allowed to access / owned by uid 0 in /www/sites/i/mon site/site/membre_du_site/fichier_partage/photo/photo_parent.php on line 143
si quelqu'un a une idée
line 143 c'est le code du dessus
merci

Posté : 20 déc. 2006, 15:53
par Ajoloca
Re,

Ton serveur web n'a pas le droit d'écrire dans ce répertoire.

Vérifie les droits pour Apache dans le dossier ou tu tentes de créer le nouveau.

Posté : 20 déc. 2006, 17:35
par re création
le dossier racine est en chmod 777 , accé en ecriture et leture

??

Posté : 20 déc. 2006, 17:45
par Ajoloca
Re,

Mais tu est en
SAFE MODE Restriction in effect
Et comme il te le dit dans le message
The script whose uid is 3400889 is not allowed to access / owned by uid 0
Le script n'est pas autorisé à accéder à /

création

Posté : 20 déc. 2006, 17:50
par tilillois
ce que je comprend pas , cest que le msg d'erreur ce met sur la page web alors que je n'est pas encore envoyer l'upload
:cry:

création

Posté : 20 déc. 2006, 18:26
par tilillois
ben , ça fonctionne c'etait juste une erreur de syntaxe
  <?php
  mkdir ("mon_dossier");
?>
au lieu de
  
<?php
  mkdir ("/mon_dossier");
?>
maitenant que je sais que sais faisable ,je voudrai qu'a la place de "mon dossier " ça soit le non de la personne qui ce logue
C'est possible??

Posté : 20 déc. 2006, 18:30
par Ajoloca
Re,

Il te suffis de récupérer le nom de login.

La procédure dépend de la façon que tu utilises por l'identifier.

création

Posté : 20 déc. 2006, 19:07
par tilillois
voila mon script de verif
 <?php

session_start(); // début de session
require_once('configure/connexion.php'); 
$login = $_GET['login'];
$password_v =  $_GET['password_v'];



//---------------------------------------------------------------------------------
function verif_user ($login, $pass){
   //conextion a la base de donnée
  $hostname = "0000"; 
  $database = "0000"; 
  $username = "0000"; 
  $password = "0000";    
$lien = mysql_connect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR);


   $pass = md5($pass);
   mysql_select_db($database, $lien);
   $verif_query=sprintf("SELECT * FROM utilisateurs WHERE login='$login' AND pass='$pass'");
   $verif = mysql_query($verif_query, $lien) or die(mysql_error());
   $row_verif = mysql_fetch_assoc($verif);
   $utilisateur = mysql_num_rows($verif);

   if ($utilisateur) { 
        $id_user = $row_verif['id_user'];

        
       
       

?>
dans les autre pages autorisé j'ai ça
<?php require_once('configure/connexion.php'); ?>
<?php


session_start(); // On relaye la session
if (session_is_registered("authentification")){ // ici les éventuelles actions en cas de réussite de la connexion
}
else {
header("Location:erreur.php?erreur=intru"); }



?>

Posté : 20 déc. 2006, 19:15
par Ajoloca
Re,

Il te manquent pas de choses ici ?
if ($utilisateur) { 
        $id_user = $row_verif['id_user'];
c'est justement là que devrait se trouver l'affectation de la session, mais on ne vois pas comment.
Ici
if (session_is_registered("authentification")
Tu testes sur l'existance de "autentification" mais que contient-elle???

création

Posté : 20 déc. 2006, 19:27
par tilillois
vola le script quand tu te logue
 <?php
if (isset($_POST['login'])){ // execution apres envoi du formulaire
    $login = $_POST['login']; // mise en variable du nom d'utilisateur
    $pass = md5($_POST['pass']); // mise en variable du mot de passe crypté
mysql_select_db($database, $lien);
$verif_query=sprintf("SELECT * FROM utilisateurs WHERE login='$login' AND pass='$pass'"); // requête sur la base administrateurs
$verif = mysql_query($verif_query, $lien) or die(mysql_error());
$row_verif = mysql_fetch_assoc($verif);
$utilisateur = mysql_num_rows($verif);
  if ($utilisateur) { // On test s'il y a un utilisateur correspondant
        session_register("authentification"); // enregistrement de la session

Posté : 20 déc. 2006, 19:31
par Ajoloca
Re,

Ce qui me chagrine c'est que là
if ($utilisateur) { // On test s'il y a un utilisateur correspondant
        session_register("authentification"); // enregistrement de la session
Je vois un accolade ovrante pour le if() et pas de fermante.
Je ne saus donc pas si le login est enregistré ou pas.

Sinon tu n'as qu'a enregistrer le login en session et le récupérer le moment venu.

création

Posté : 20 déc. 2006, 19:34
par tilillois
dsl j'avais pas tous copié
 <?php
if (isset($_POST['login'])){ // execution apres envoi du formulaire
    $login = $_POST['login']; // mise en variable du nom d'utilisateur
    $pass = md5($_POST['pass']); // mise en variable du mot de passe crypté
mysql_select_db($database, $lien);
$verif_query=sprintf("SELECT * FROM utilisateurs WHERE login='$login' AND pass='$pass'"); // requête sur la base administrateurs
$verif = mysql_query($verif_query, $lien) or die(mysql_error());
$row_verif = mysql_fetch_assoc($verif);
$utilisateur = mysql_num_rows($verif);
  if ($utilisateur) { // On test s'il y a un utilisateur correspondant
        session_register("authentification"); // enregistrement de la session
        $id_user = $row_verif['id_user'];
         $date = date("Y-m-d");   //la date de connextion
         $time = date("G:i:s");   //l'heure de connextion
         $ip = $_SERVER['REMOTE_ADDR'];    //l'adresse ip de connextion
        $requete = sprintf(" INSERT INTO connexion(ref_id_user, date_connex, time_connex, adresse_ip_connex)
             VALUES('$id_user', '$date', '$time', '$ip')");
        mysql_select_db($database, $lien);

        mysql_query($requete, $lien) or die('Erreur SQL !'.$requete.''.mysql_error());
        $id_connextion = mysql_insert_id();
        if ($row_verif['statuts'] == 1){
              header("Location:index.php?erreur=session_bloquer");}
        elseif($row_verif['statuts'] == 3){
             header("Location:index.php?erreur=session_non_valider"); }
        else{
        $_SESSION ['id_user'] = $id_user;
        $_SESSION['privilege'] = $row_verif['privilege']; 
        $_SESSION['nom'] = $row_verif['nom']; // Son nom
        $_SESSION['prenom'] = $row_verif['prenom']; // Son Prénom
        $_SESSION['login'] = $row_verif['login']; // Son Login
        $_SESSION['pass'] = $row_verif['pass']; // Son mot de passe (à éviter)
        $_SESSION ['mail'] = $row_verif['mail']; // son mail
        $_SESSION ['tel'] = $row_verif['tel']; //son telephone fixe
        $_SESSION ['portable'] = $row_verif['portable']; //son telephone portable
        $_SESSION ['statuts'] = $row_verif['statuts'];

        $_SESSION ['id_connex'] = $id_connextion;  
        $_SESSION ['variable_divers'] = null; //permet de stocker une variable!!
         header("Location:page_acc.php"); // redirection si OK   //sans pop up
        }
    }
    else {
        header("Location:index.php?erreur=login"); // redirection si utilisateur non reconnu
    }
}