Requete correcte mais ne fonctionne pas !
Posté : 08 sept. 2005, 08:52
Bonjour a tous,
J'ai un petit souci d'enregistrement dans une base de donnée ! Euh... Plutot avec un UPDATE! C'est en rapport avec l'UPLOAD de fichier...

J'ai un petit souci d'enregistrement dans une base de donnée ! Euh... Plutot avec un UPDATE! C'est en rapport avec l'UPLOAD de fichier...
<?php require_once('../Connections/imprime.php'); ?>
<html>
<?
if (isset($result)) {@mysql_free_result($result);}
$nomdoc=" ";
$titredoc=" ";
$descriptifdoc=" ";
$query = "SELECT * FROM imprime.document WHERE Iddoc='$id_nouvel_enregistrement'";
$result = mysql_query($query);
$champ = @mysql_fetch_array($result);
$nomdoc=$champ[1];
$titredoc=$champ[2];
$descriptifdoc=$champ[3];
?>
<?
$id_nouvel_enregistrement = " ";
$id_nouvel_enregistrement= $_GET['id'];
?>
<body background="../Images/PINELUMB.JPG">
<form name="form1" method="post" action="<? echo "../IMPRIME/update_doc.php?id=" . $id_nouvel_enregistrement; ?>" enctype="multipart/form-data">
<table width="200" border="0">
<tr>
<td>
<p><strong>Titre :</strong>
<input type="text" name="titre" value="<? echo $titredoc; ?>">
</p>
<p> <strong>Descriptif :</strong>
<textarea name="descriptif" rows="3"><? echo $descriptifdoc; ?></textarea>
</p>
<p><strong>Document actuel :
<input name="textfield" type="text" disabled value="<? echo $nomdoc; ?>" size="50" maxlength="50">
</strong> </p>
<p><strong>Fichier à télecharger :
<input type="file" name="file_name" enctype="multipart/form-data" on>
<br>
<input type="hidden" name="MAX_FILE_SIZE" value="100000">
</strong></p>
</td>
<td><input name="Envoyer" type="submit" value="METTRE A JOUR" ></td>
</tr>
</table>
</form>
</html>
Et voici ma page ou j'enregistre dans la base. Bref, celle qui ne fonctionne pas !<?php require_once('../Connections/imprime.php'); ?>
<?php
if (isset($test)) {@mysql_free_result($test);}
if (isset($result2)) {@mysql_free_result($result2);}
$file_name = isset($_FILES['file_name']['name'])?$_FILES['file_name']['name']:"none";
if ($_FILES['file_name']['size']==0) {
$Id=$_GET['id'];
$titre=$_POST['titre'];
$descriptif=$_POST['descriptif'];
mysql_select_db($database_imprime, $imprime);
$sql = "UPDATE `imprime.document` SET `Nomdoc`='$file_name', `Titredoc`='$titre', `Descriptifdoc`='$descriptif'";
$sql.= "WHERE `Iddoc`='$Id'" ;
$test = mysql_query($sql);
@mysql_free_result($test); }
// ELSE DU PREMIER TEST
else {
//Récupération du chemin pour la copie du fichier et des données pour l'enregistrement dans la base de donnée
$chemin=" ";
$query2 = "SELECT Valeur FROM imprime.param WHERE Donnee='chemin'";
$result2 = mysql_query($query2);
$resultchemin = @mysql_fetch_array($result2);
$chemin=$resultchemin[0];
$Id=$_GET['id'];
$titre=$_POST['titre'];
$descriptif=$_POST['descriptif'];
$file_terminaison = substr($_FILES['file_name']['name'],strlen($_FILES['file_name']['name'])-3);
if ($file_terminaison=="txt" or $file_terminaison=="pdf" or $file_terminaison=="doc")
{
/* indiquer $dest_file qui correspond au répertoire de destination */
$dest_file = $chemin . $file_name;
/* enlève un "\" */
$source_file=$_FILES['file_name']['tmp_name'];
/* copie du fichier */
$res_copy=copy($source_file , $dest_file);
}
else
{ print "Sélectionner un fichier au format texte.";
}
//Enregistrement dans la base
if (isset ($_POST['Nomdoc']) && isset ($_POST['Titredoc']) && isset ($_POST['Descriptifdoc'])){
$titre = $_POST['Titredoc']; $descriptif = $_POST['Descriptifdoc'];
$nomdoc = $_FILES['file_name']['name'];
$sql = "UPDATE `imprime.document` SET `Nomdoc`='$nomdoc', `Titredoc`='$titre', `Descriptifdoc`='$descriptif'" ;
$sql.= "WHERE `Iddoc`='$Id'" ;
$test = mysql_query($sql);
@mysql_free_result($test); }
}
?>
<html>
<body background="../Images/PINELUMB.JPG">
<strong><h2 align="center" style="color:#009900">Votre document a été modifié</h2></strong>
<META HTTP-EQUIV="Refresh" CONTENT="2; URL= ../maj_lien.php">
</body>
</html>
Merci d'avance !