Erreur PHP Mkdir

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Erreur PHP Mkdir

Re: Erreur PHP Mkdir

par InTheSkyTheSpirit » 28 avr. 2010, 17:54

Peux-tu me dire ce que je dois ajouter au code et où dans le code (j'y connais rien ^^)

Re: Erreur PHP Mkdir

par stealth35 » 28 avr. 2010, 16:58

déjà pour ton problème de dossier utilise file_exists

Re: Erreur PHP Mkdir

par InTheSkyTheSpirit » 28 avr. 2010, 15:52

Eh ben maintenant, logique, il me dit d'abord ça :
Only jpg file are accepted (extension .jpg) Thanks !
puis un dossier vide est créé puis, deuxième essai :
Warning: mkdir() [function.mkdir]: File exists in /home/website/f/l/o/flo/blog/CMS/blog_add_process.php on line 28
Only jpg file are accepted (extension .jpg) Thanks !
Ce qui est bizarre, c'est que je n'envoie que du texte, pas d'image...fin y a deux problèmes en même temps il me semble là.

Re: Erreur PHP Mkdir

par stealth35 » 28 avr. 2010, 15:25

hello

tu peux mettre un @ devant le mkdir pour éviter le warning si le répertoire existe déjà.

++
lui conseil pas ca

Re: Erreur PHP Mkdir

par telnes » 28 avr. 2010, 15:22

hello

tu peux mettre un @ devant le mkdir pour éviter le warning si le répertoire existe déjà.

++

Re: Erreur PHP Mkdir

par stealth35 » 28 avr. 2010, 15:09

Je ne suis pas l'auteur du code et qui plus est je ne connais pas le php :D J'essaye de comprendre.

Cette fonction serait en cause ? je la vois trois fois dans le fichier.
ouais si elle existe pas ca va pas marcher, donc supprime la au lieu de faire
echo alert("Only jpg file are accepted (extension .jpg) Thanks !");
//tu fais
echo "Only jpg file are accepted (extension .jpg) Thanks !";

Re: Erreur PHP Mkdir

par InTheSkyTheSpirit » 28 avr. 2010, 15:04

Je ne suis pas l'auteur du code et qui plus est je ne connais pas le php :D J'essaye de comprendre.

Cette fonction serait en cause ? je la vois trois fois dans le fichier.

Re: Erreur PHP Mkdir

par stealth35 » 28 avr. 2010, 14:40

elle sort d'où ta fonction alert, elle est définie nul part

Re: Erreur PHP Mkdir

par InTheSkyTheSpirit » 28 avr. 2010, 14:39

j'ai essayé les deux, que le dossier existe ou pas, il y a une erreur.

Quand le dossier est créé, j'ai l'erreur précédente et quand il n'y a pas de dossier j'ai ça :
Fatal error: Call to undefined function alert() in /home/website/f/l/o/flo/blog/CMS/blog_add_process.php on line 41
Dans les deux cas, au final, il y a un dossier vide.

Re: Erreur PHP Mkdir

par stealth35 » 28 avr. 2010, 14:14

oui le fichier existe déjà. Un dossier vide est créé. Techniquement, il devrait y avoir les données de l'article créé dedans, mais il n'y a rien puisque l'erreur bloque tout.
faut que tu testes avant si le dossier existe, si il existe pas a ce moment la tu le crées :wink:

Re: Erreur PHP Mkdir

par InTheSkyTheSpirit » 28 avr. 2010, 14:09

oui le fichier existe déjà. Un dossier vide est créé. Techniquement, il devrait y avoir les données de l'article créé dedans, mais il n'y a rien puisque l'erreur bloque tout.

Re: Erreur PHP Mkdir

par stealth35 » 28 avr. 2010, 13:39

hello, tu comprends pas : File exists ?

Re: Erreur PHP Mkdir

par InTheSkyTheSpirit » 28 avr. 2010, 13:27

le script complet est ici :
<?
include('verify.php');


$title = $_POST['title'];
$bigline = $_POST['bigline'];
$text = $_POST['text'];
$categorie = $_POST['categorie'];
$categorie_name = $_POST['categorie_name'];
$author = $_POST['author'];

// Call for the name of categorie
$queryd = "SELECT * FROM $table_d WHERE id_cat=$categorie"; 
$resultd = mysql_query($queryd);
$mycat = @mysql_fetch_object($resultd);
$categorie_name = $mycat->categorie_name;

// LAST INCREMENTATION
$queryz = "SELECT last FROM $table_g"; 
$resultz = mysql_query($queryz);
$incr = @mysql_fetch_object($resultz);
$nrowss = $incr->last;

// NEW ID
$id= $nrowss+1;

umask(0000);
mkdir('../blog/'.$id.'', 0777);
	// Folder blog + id of the new article
	$uploadDir = '../blog/'.$id.'/';
	
	// Image file data
	$fileName = $_FILES['preview']['name'];
	$tmpName  = $_FILES['preview']['tmp_name'];

    // File extension extraction
	$ext = substr(strrchr($fileName, "."), 1);
	
	// File extension verification
	if ($ext != "jpg" ) { 
		echo alert("Only jpg file are accepted (extension .jpg) Thanks !");
		exit;
		}
	// Generate random name
	$randName = md5(rand() * time());
	
	// Creation of path
    $filePath = $uploadDir . $fileName;
    $newfilename = $fileName;

    // UPLOAD IMAGE
	// If something wrong.... we stop ! or we upload.
    $result    = move_uploaded_file($tmpName, $filePath);
	if (!$result) {
		echo "Error during upload... Please read the help doc.";
		exit;
	}

$date_post	=	date("Y-m-d H:i:s");

$insert = mysql_query("INSERT INTO $table_b 
                       (
					   title,
					   bigline,
					   text,
					   preview,
					   categorie,
					   categorie_name,
					   author,
					   date_post
					   )
					   VALUES
					   (
					   '$title',
					   '$bigline',
					   '$text',
					   '$newfilename',
					   '$categorie',
					   '$categorie_name',
					   '$author',
					   '$date_post'
					   )") or die(mysql_error()); 
if(!$insert) echo alert("Error during insert...");

$update = mysql_query("UPDATE $table_g SET last='$id'");

if(!$update) echo alert("Error during update...");

header("location:update_rss.php");
?>

Erreur PHP Mkdir

par InTheSkyTheSpirit » 28 avr. 2010, 10:55

Bonjour à tous !

J'ai installé récemment un nouveau CMS pour mon site : http://www.flopod.fr

Ce CMS possède une zone admin pour ajouter du contenu à deux rubriques du site.

Malheureusement, dès que j'essaye de créer un article, rien n'est créé ou alors je reçois ce message d'erreur :
Warning: mkdir() [function.mkdir]: File exists in /home/website/f/l/o/flo/blog/CMS/blog_add_process.php on line 28
 
Fatal error: Call to undefined function alert() in /home/website/f/l/o/flo/blog/CMS/blog_add_process.php on line 41

Que se passe-t-il ?