[help] intégration d'un fonction dans un script php

DiabloBros Messages postés 25 Date d'inscription mardi 24 octobre 2006 Statut Membre Dernière intervention 12 novembre 2010 - 29 sept. 2010 à 22:59
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 - 2 oct. 2010 à 13:11
bien le bonjour,

je bataille sur un petit qcript depui quelque jour et jai une fonction qui me chagrine...

c'est un uploader simple de fichier en php, avec une petit base de données.

Tous fonctionne super, mais mon seul soucie viens du fait que je n'arrive pas a Supprimer le fichier sur le server en meme temps qui je retire la ligne de la base de données.


=> Download .zip <=

une interface visiteur , permet de download les fichier au visiteur, permet un tri des dl , et créé automatiquement des pages tous les 10 DL enregistré ...


la parti admin avec Ajout/édition des uploads...



Et donc voila , j'aimeraii bien rajoiter une fonction "unlink" a la fin mais ca vaus pas


// connexion à la base de données
require_once 'config.php';
// fichier contenant les fonctions
require_once 'fonctions.php';
// mode ajouter par défaut
$mode = 'ajouter_valid';
// la date d'aujourd'hui au format francais
$datenow = date("d-m-Y",time());

// on ajoute le telechargement en base de données
// si le formulaire d'ajout est validé
if (isset($_POST['ajouter_valid'])) {

$nom = mysql_real_escape_string($_POST['nom']);
$genre = mysql_real_escape_string($_POST['genre']);
$image = mysql_real_escape_string($_POST['image']);
$clic = mysql_real_escape_string($_POST['clic']);
$url = mysql_real_escape_string($_POST['url']);
$desc = mysql_real_escape_string($_POST['description']);
$datefr = mysql_real_escape_string($_POST['datefr']);
$date = datefrenus($datefr);
$sql = "INSERT INTO ".DB_TABLE_DL." (nom, genre, image, url, 
description, clic, date) VALUES ('".$nom."', '".$genre."', '".$image."', '".$url."',
'".$desc."', '".$clic."', '".$date."')";
mysql_query($sql);

// on modifie l'enregistrement mysql du telechargement
// si le formulaire de modification est validé
} else if (isset($_POST['modifier_valid']) && 
is_numeric($_POST['idtelech'])) {

$nom = mysql_real_escape_string($_POST['nom']);
$genre = mysql_real_escape_string($_POST['genre']);
$image = mysql_real_escape_string($_POST['image']);
$clic = mysql_real_escape_string($_POST['clic']);
$url = mysql_real_escape_string($_POST['url']);
$desc = mysql_real_escape_string($_POST['description']);
$datefr = mysql_real_escape_string($_POST['datefr']);
$date = datefrenus($datefr);
$sql = "UPDATE ".DB_TABLE_DL." 
SET nom='".$nom."', genre='".$genre."',image='".$image."',url='".$url."', 
description='".$desc."',clic='".$clic."',date='".$date."' 
WHERE id = '".$_POST['idtelech']."'";
mysql_query($sql);

// on selectionne les infos d'un telechargement
// pour les afficher dans les champs du formulaire
// si une modification est demandée
} else if (is_numeric($_GET['modifier'])) {

$mode = 'modifier_valid';
$sql = "SELECT id, nom, genre, image, url, description, clic, 
DATE_FORMAT(date,'%d-%m-%Y') AS datefr 
FROM ".DB_TABLE_DL." 
WHERE id = '".$_GET['modifier']."'";
$req = mysql_query($sql);
if ($req) $telech = mysql_fetch_array($req);
$desc = stripslashes($telech['description']);
$nom = stripslashes($telech['nom']);
$genre = stripslashes($telech['genre']);
$image = stripslashes($telech['image']);
$url = stripslashes($telech['url']);
$datefr = stripslashes($telech['datefr']);
$id = $telech['id'];
$clic = $telech['clic'];

// demande de suppression ? on supprime le telechargement
} else if (is_numeric($_GET['supprimer'])) {

$sql = "DELETE FROM ".DB_TABLE_DL." 
WHERE id = '".$_GET['supprimer']."'";
mysql_query($sql); 
 
 	//unlink ($url);
}
?> 



Merci d'avance a tous.

DiabloBros Was Here...

3 réponses

Lyle56 Messages postés 240 Date d'inscription jeudi 1 mai 2008 Statut Membre Dernière intervention 19 juillet 2012 2
30 sept. 2010 à 11:10
Bonjour

// demande de suppression ? on supprime le telechargement
} else if (is_numeric($_GET['supprimer'])) {

// je dirai : 

$sql = "SELECT url FROM ".DB_TABLE_DL." 
WHERE id = '".$_GET['supprimer']."'";

$req = mysql_query($sql);
if ($req) $telech = mysql_fetch_array($req);
$url = $telech['url']; 


$sql = "DELETE FROM ".DB_TABLE_DL." 
WHERE id = '".$_GET['supprimer']."'";
mysql_query($sql); 

// tu décommente ta ligne 
unlink ($url);
}



Sans maitrise, la puissance n'est rien
Il ne faut pas vendre la peau de l'ours, non il ne faut pas.
0
DiabloBros Messages postés 25 Date d'inscription mardi 24 octobre 2006 Statut Membre Dernière intervention 12 novembre 2010
1 oct. 2010 à 01:10
haaa super Merci beaucoup cela fonctionne parfaitement! et c'est exactement comme je le voulez, mici

Sinon j'ai un poto qui est passé et qui ma fait:
// demande de suppression ? on supprime le telechargement
} else if (is_numeric($_GET['supprimer'])) {


$sql = "DELETE FROM ".DB_TABLE_DL." 
WHERE id = '".$_GET['supprimer']."'";
mysql_query($sql); 

$url = $_GET['file'];				
 	unlink ($url);
}


un poil plus simple et qui marche aussi ^^

mais je vais garder ta façon c'est un peu moins bourrin ^^

merci encore

DiabloBros Was Here...
0
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
2 oct. 2010 à 13:11
Bonjour,

Pour une question PHP, merci de poster sur phpcs dans un thème PHP (Pas le bar).

[ Déplacé sur phpcs ]
0
Rejoignez-nous