par
vincedjs » 15 févr. 2006, 11:33
Bonjour, voila je fais une série de message dans 1 variable, me permettant à la fin du code d'afficher une alert du probleme ou de l'éxécution de l'upload du fichier.
Problème:
-Seulement, dans mon application j'aimerai qu'il détecte si le fichier à deja été enregistrer dans la base, (nom) lors d'une requete précédente, lors d'une insertion.
-Or il m'affiche totu le temps fichier " xx" et fiche " xxx " insérer correctement.
voici mon code:
<?php
if((isset($_FILES['fichiers'])) || (isset($_FILES['fichiers'])))
{
$dest_dossier = 'C:\wamp\www\rbdc\upload/';
function nomfichiers ()
{
$dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if(isset($_FILES['fichiers']))
{
if($_FILES['fichiers']['size']>0)
{
$sql = "SELECT COUNT(*) FROM fichiersj WHERE nomFichierj = '".$dest_fichier."'";
$res = mysql_query($sql);
if($res)
{
if(mysql_result($res, 0, 0) == 0)
{
$dest_fichier = basename($_FILES['fichiers']['name']);
nomfichiers ();
move_uploaded_file($_FILES['fichiers']['tmp_name'], $dest_dossier . $dest_fichier);
$sql3 = "INSERT INTO fichiersj (nomFichierj, numFiche) VALUES ( '".$dest_fichier."', '".$numfiche2."')";
$result3 = mysql_query($sql3);
$msg="Fichier \''.$dest_fichier.'\' et Fiche n°\''.$numfiche2.'\' insérer correctement !";
}else{
$msg="Fichier \''.$dest_fichier.'\' existe déja! Renommer le fichier ou choisissez en un autre.";
}
//fin du if($res)
}else{
$msg="Erreur sql sur le fichier \''.$dest_fichier.'\', \''.$sql.'\'";
}
echo '<script language=javascript> alert (" \''.$msg.'\' ");</script>';
echo '<SCRIPT LANGUAGE="JavaScript">
document.location.href="accueil.php" </SCRIPT>';
exit;
}
}
}
?>
Merci

[/php]
Bonjour, voila je fais une série de message dans 1 variable, me permettant à la fin du code d'afficher une alert du probleme ou de l'éxécution de l'upload du fichier.
[b][u]Problème:[/u][/b]
-Seulement, dans mon application j'aimerai qu'il détecte si le fichier à deja été enregistrer dans la base, (nom) lors d'une requete précédente, lors d'une insertion.
[size=150]-[b]Or il m'affiche totu le temps fichier " xx" et fiche " xxx " insérer correctement.[/b][/size]
voici mon code:
[php]<?php
if((isset($_FILES['fichiers'])) || (isset($_FILES['fichiers'])))
{
$dest_dossier = 'C:\wamp\www\rbdc\upload/';
function nomfichiers ()
{
$dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$dest_fichier = preg_replace('/([^.a-z0-9]+)/i', '_', $dest_fichier);
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if(isset($_FILES['fichiers']))
{
if($_FILES['fichiers']['size']>0)
{
$sql = "SELECT COUNT(*) FROM fichiersj WHERE nomFichierj = '".$dest_fichier."'";
$res = mysql_query($sql);
if($res)
{
if(mysql_result($res, 0, 0) == 0)
{
$dest_fichier = basename($_FILES['fichiers']['name']);
nomfichiers ();
move_uploaded_file($_FILES['fichiers']['tmp_name'], $dest_dossier . $dest_fichier);
$sql3 = "INSERT INTO fichiersj (nomFichierj, numFiche) VALUES ( '".$dest_fichier."', '".$numfiche2."')";
$result3 = mysql_query($sql3);
$msg="Fichier \''.$dest_fichier.'\' et Fiche n°\''.$numfiche2.'\' insérer correctement !";
}else{
$msg="Fichier \''.$dest_fichier.'\' existe déja! Renommer le fichier ou choisissez en un autre.";
}
//fin du if($res)
}else{
$msg="Erreur sql sur le fichier \''.$dest_fichier.'\', \''.$sql.'\'";
}
echo '<script language=javascript> alert (" \''.$msg.'\' ");</script>';
echo '<SCRIPT LANGUAGE="JavaScript">
document.location.href="accueil.php" </SCRIPT>';
exit;
}
}
}
?>[/php]
Merci :wink:[/php]