Vous n'êtes pas identifié(e).
Pages :: 1
bonjour,
j'ai créé un formulaire qui permet l'upload de fichier, tel que des images, du son ou des videos.
Voici comment ce présente le formulaire
L'upload des images ce fait bien ainsi que leur inscription dans la BDD.
Par contre pour les sons et les videos ça plante. Pas d'upload, ni d'inscription dans la BDD
je vous montre, mes tables:
Voici le code:
<body>
<p><h1 id="titre">Ajouter un sujet</h1></p>
<form action="" method="post" enctype="multipart/form-data">
<fieldset>
<table id="tform">
<tr>
<td width="10%"><label>Sujet:</label></td>
<td><input id="sujet" type="text" name="sujet"/></td>
</tr>
<tr>
<td width="10%"><label>Message:</label></td>
<td><textarea id="message" name="message"></textarea></td>
</tr>
<tr>
<td width="10%"><label>Votre image:</label></td>
<td><input type="file" name="image" value="parcourir"/><label for="format" class="format"> * votre fichier doit etre au format jpg, jpeg, gif, png pour etre uploadé</label></td>
</tr>
<tr>
<td width="10%"><label>Votre son:</label></td>
<td><input type="file" name="son" value="parcourir"/><label for="format1" class="format"> * votre fichier doit etre au format mp3 pour etre uploadé</label></td>
</tr>
<tr>
<td width="10%"><label>Votre video:</label></td>
<td><input type="file" name="video" value="parcourir"/><label for="format" class="format"> * votre fichier doit etre au format mp4 pour etre uploadé</label></td>
</tr>
</table>
</fieldset>
<input type="submit" value="Envoyer" name="valider"/>
</form>
<br/><br/><br/><br/>
<a href="monblog.php">Retourner à la page d'acceuil</a>
</body>
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '');
}
catch (Exception $e)
{
die ('erreur: ' .$e->getMessage());
}
/*-----------------------------------------------------------------------------------------------
Enregistrement du billet dans la BDD
------------------------------------------------------------------------------------------------*/
$req = $bdd->prepare('INSERT INTO billet(titre, contenu, date_creation)
VALUES(:titre, :contenu, NOW())');
$req->execute(array(
'titre' => $_POST['sujet'],
'contenu' => $_POST['message']
));
$req->closeCursor();
/*------------------------------------------------------------------------------------------------
Enregistrement de l'image dans la BDD
------------------------------------------------------------------------------------------------*/
$emp = 'images/';
$req = $bdd->prepare('INSERT INTO images(nom, sujet, taille, emplacement, date)
VALUES(:nom, :sujet, :taille, :emplacement, NOW())');
$req->execute(array(
'nom' => $_FILES['image']['name'],
'sujet' => $_POST['sujet'],
'taille' => $_FILES['image']['size'],
'emplacement' => $emp
));
$req->closeCursor();
/*-----------------------------------------------------------------------------------------------
Upload de l'image dans image/
------------------------------------------------------------------------------------------------*/
if (isset($_FILES['image']) AND $_FILES['image']['error'] == 0)
{
if ($_FILES['image']['size'] <= 10485760)
{
$infosfichier = pathinfo($_FILES['image']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png');
if (in_array($extension_upload, $extensions_autorisees))
{
move_uploaded_file($_FILES['image']['tmp_name'], $emp . basename($_FILES['image']['name']));
}
}
}
?>
<pre>
<?php
print_r($_FILES['image']);
?>
</pre>
<?php
/*-----------------------------------------------------------------------------------------------
Enregistrement du son dans la BDD
------------------------------------------------------------------------------------------------*/
$emps = 'sons/';
$req = $bdd->prepare('INSERT INTO son(s_nom, s_sujet, s_taille, s_emplacement, s_date)
VALUES(:s_nom, :s_sujet, :s_taille, :s_emplacement, NOW())');
$req->execute(array(
'nom' => $_FILES['son']['name'],
'sujet' => $_POST['sujet'],
'taille' => $_FILES['son']['size'],
'emplacement' => $emps
ligne 130 ));
$req->closeCursor();
/*-----------------------------------------------------------------------------------------------
Upload du son dans sons/
------------------------------------------------------------------------------------------------*/
if (isset($_FILES['son']) AND $_FILES['son']['error'] == 0)
{
if ($_FILES['son']['size'] <= 104857600)
{
$infosfichier = pathinfo($_FILES['son']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('mp3');
if (in_array($extension_upload, $extensions_autorisees))
{
move_uploaded_file($_FILES['son']['tmp_name'], $emp . basename($_FILES['son']['name']));
}
}
}
?>
<pre>
<?php
print_r($_FILES['son']);
?>
</pre>
<?php
/*-----------------------------------------------------------------------------------------------
Enregistrement de la video dans la BDD
------------------------------------------------------------------------------------------------*/
$empv = 'videos/';
$req = $bdd->prepare('INSERT INTO video(v_nom, v_sujet, v_taille, v_emplacement, v_date)
VALUES(:v_nom, :v_sujet, :v_taille, :v_emplacement, NOW())');
$req->execute(array(
'nom' => $_FILES['video']['name'],
'sujet' => $_POST['sujet'],
'taille' => $_FILES['video']['size'],
'emplacement' => $empv
ligne 176 ));
$req->closeCursor();
/*-----------------------------------------------------------------------------------------------
Upload de la video dans videos/
------------------------------------------------------------------------------------------------*/
if (isset($_FILES['video']) AND $_FILES['video']['error'] == 0)
{
if ($_FILES['video']['size'] <= 1048576000)
{
$infosfichier = pathinfo($_FILES['video']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('mp4');
if (in_array($extension_upload, $extensions_autorisees))
{
ligne 192 move_uploaded_file($_FILES['video']['tmp_name'], $empv . basename($_FILES['video']['name']));
}
}
}
?>
<pre>
<?php
print_r($_FILES['video']);
?>
</pre>
<?php
?>
</html>
Et pour finir, voici les messages d'erreurs que j'obtiens avec quelques print_r:
Je précise, que je travail avec MAMP et que j'ai augmenté la taille max des téléchargement à 1000 mo
Bien voila, merci pour votre aide
Dernière modification par PhacheP (18-06-2013 21:42:19)
Hors ligne
C'est bon problème résolu. L'erreur était tellement énorme que j'ai honte de mon post. Bon fo dire que j'ai pas tres bien dormi la nuit dernière et que je suis crevé.
Une bonne nuit de sommeil s'impose.
@+
Hors ligne
Pages :: 1