Bonjour,
Pouvez-vous m'aider ?
Je vous remercie d'avance.
Je m'explique.
En fait, j'arrive très bien à uploader dans la base de données.
C'est après que les problèmes commencent.
J'effectue alors les opérations suivantes.
Je quitte la page (www.creaprint.be/avancement00.php).
Je relance la page (www.creaprint.be/avancement00.php).
Et là, cet upload pourtant chargé au préalable dans la base de données,
n'apparaît pas dans "remplir choisissez un fichier" par le nom de ce fichier déjà uploadé.
Pire, si je valide alors le formulaire, sans avoir à nouveau uploadé le fichier,
il "disparaît" de la base de données (la variable BLOB est alors vide).
Pour être au maximum lisible, j'ai fortement aéré les codes ci-dessous.
Pour enregistrer dans le record (tout fonctionne ici !)
Pour lire dans le record (c'est la pagaille !)
Voici le formulaire en html/php
Modifié par jytest (07 Jul 2012 - 10:27)
Pouvez-vous m'aider ?
Je vous remercie d'avance.
Je m'explique.
En fait, j'arrive très bien à uploader dans la base de données.
C'est après que les problèmes commencent.
J'effectue alors les opérations suivantes.
Je quitte la page (www.creaprint.be/avancement00.php).
Je relance la page (www.creaprint.be/avancement00.php).
Et là, cet upload pourtant chargé au préalable dans la base de données,
n'apparaît pas dans "remplir choisissez un fichier" par le nom de ce fichier déjà uploadé.
Pire, si je valide alors le formulaire, sans avoir à nouveau uploadé le fichier,
il "disparaît" de la base de données (la variable BLOB est alors vide).
Pour être au maximum lisible, j'ai fortement aéré les codes ci-dessous.
Pour enregistrer dans le record (tout fonctionne ici !)
if ($_FILES['facturepdf']['size'] > 0) {
$fileName = $_FILES['facturepdf']['name'];
$tmpName = $_FILES['facturepdf']['tmp_name'];
$fileSize = $_FILES['facturepdf']['size'];
$fileType = $_FILES['facturepdf']['type'];
$fp = fopen($tmpName, 'r');
$content = fread($fp, filesize($tmpName));
$content = addslashes($content);
fclose($fp);
}
...
$bdc=$_GET['bdc'];
$requeteNEW="UPDATE shop_commande SET ".
...
"nofacture='".trim($_POST['nofacture'])."' ,".
"facturepdf='".$content."' ,".
...
"WHERE refcommande='".$bdc."' ";
mysql_query($requeteNEW);
Pour lire dans le record (c'est la pagaille !)
$reqCommande="SELECT * FROM shop_commande ".
"WHERE refcommande='".$bdc."' ";
$resCommande=mysql_query($reqCommande);
$back01=mysql_fetch_array($resCommande);
if ($back01) {
...
$_POST['nofacture'] = $back01['nofacture'];
$_FILES['facturepdf'] = $back01['facturepdf'];
...
}
...
Voici le formulaire en html/php
<form name="envoiok02" action="avancement00.php?ok02=1&bdc=<?php echo $bdc; ?>" method="post" enctype="multipart/form-data">
...
<table id="tablefin01" border="0" cellspacing="0" >
...
<tr>
<td colspan="2" height="25">Facture n°</td>
<td><input name="nofacture" type="text" id="nofacture" height="17" size="8" value="<?php echo $_POST['nofacture']; ?>" class="zone2"></td>
</tr>
<tr>
<td colspan="3" height="25"><input type="hidden" name="MAX_FILE_SIZE" value="2000000"><input type="file" id="facturepdf" name="facturepdf" value="<?php echo $_FILES['facturepdf']['name']; ?>" ></td>
</tr>
...
</table>
...
</form>
Modifié par jytest (07 Jul 2012 - 10:27)