Busima
Messages postés53Date d'inscriptionmercredi 10 février 2016StatutMembreDernière intervention29 janvier 2021
-
11 août 2018 à 01:37
jordane45
Messages postés38307Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention23 novembre 2024
-
11 août 2018 à 15:43
Bonjour.
Pouvez-vous m'aider à resoudre mon problème? Je cherche à enregistrer des vidéos dans une base de données que j'ai créé en vue de réaliser une webtv.
En effet je veux réaliser un site de vidéos en ligne mais je ne maîtrise pas totalement la procédure d'enregistrement des vidéos dans ma base de données.
Je considère actuellement une bd comportant une seule table videos(id, titre, description, date).
Je veux enregistrer les videos dans la bd et les afficher sur une page pour qu'on puisse les visualiser et les lire une à une.
A cet éffet j'ai élaboré 2 pages, une page qui me permet d'uploader les vidéos(categories.php) et une 2eme page qui doit me permettre de les afficher (info.php)!
Jai aussi créé la base de données dont vous trouverez le code tout en bas.
Le problème est que lorsque je fais mes enregistrements il ya certaines vidéos qui refusent de s'afficher correctement et j'avais cru que c'était la taille qui posait problème...
Dans ma base de données, en regardant via phpmyadmin, je vois bien les noms des vidéos insérés ainsi que les autres champs, seulement qu'il paraît y avoir un soucis car il apparaît pendant certains enregistrements un message d'erreur après que j'ai fini d'uploader certaines vidéos. ce sont les messages d'erreur de ce genre: "Not Found
The requested URL /MYWEBTV/videos/mesvideos/DJOBALAeÌpisode18.mp4 was not found on this server."
Je sais qu'il y a un problème mais je ne sais pas ou est-ce qu'il se situe, si c'est pendant l'enregsitrement ou après l'enregistrement je ne sais pas.
Vous pouvez donc créer les 2 pages ainsi que la base de données sur votre votre ordinateur pour mieux comprendre et m'aider à resoudre le problème.
Page de traitement des informations provenant de la base de données:
info.php
<?php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
require_once('connectbd.php');
?>
<?php
if (isset($_POST['valider']))
/* if (isset($_POST['model']) and (!empty($_POST['model']))) */
{
$titre=$_POST['titre'];
$genre=$_POST['genre'];
$description=$_POST['description'];
//On construit la date d'aujourd'hui strictement comme sql la construit
$today = date("y-m-d");
// teste de l'envoi du fichier PHOTO 1
if (isset($_FILES['video1']) and $_FILES['video1']['error']== 0 )
{
// teste de la grandeur de la video
if ($_FILES['video1']['size'] <= 500000000000)
{
// teste de la prise en compte du chemin et de l'extention du fichier
$infosfichier = pathinfo($_FILES['video1']['name']);//on prend le nom du fichier
$extension_upload = $infosfichier['extension']; //on prend l'extension du fichier
$extensions_autorisees = array('mp4', 'avi', 'vob', 'flv', 'rmvb', 'wmv', 'swf','mpg','[/contents/409-mp4-fichier-mp4 MP4]', 'AVI','VOB','FLV','RMVB', 'WMV', 'SWF','MPG', 'jpeg');
//on prend les extensions autorisées
if (in_array($extension_upload, $extensions_autorisees))
{
move_uploaded_file($_FILES['video1']['tmp_name'], 'videos/mesvideos/'.basename($_FILES['video1']['name']));
$video1=$_FILES['video1']['name'];
/* echo "L'envoi de la video a bien réussi. Merci!"; */
}
}
}
// teste de l'envoi du fichier
if (isset($_FILES['video2']) and $_FILES['video2']['error']== 0 )
{
// teste de la grandeur de l'image
if ($_FILES['video2']['size'] <= 500000000000)
{
// teste de la prise en compte du chemin et de l'extention du fichier
$infosfichier = pathinfo($_FILES['video2']['name']);//on prend le nom du fichier
$extension_upload = $infosfichier['extension']; //on prend l'extension du fichier
$extensions_autorisees = array('mp4', 'avi', 'vob','flv','rmvb', 'wmv', 'swf','mpg','MP4', 'AVI','VOB','FLV','RMVB', 'WMV', 'SWF','MPG', 'jpeg');
//on prend les extensions autorisées
if (in_array($extension_upload, $extensions_autorisees))
{
move_uploaded_file($_FILES['video2']['tmp_name'], 'videos/mesvideos/'.basename($_FILES['video2']['name']));
$video2=$_FILES['video2']['name'];
/* echo "L'envoi de la photo a bien réussi. Merci!"; */
}
}
}
// teste de l'envoi du fichier
if (isset($_FILES['video3']) and $_FILES['video3']['error']== 0 )
{
// teste de la grandeur de l'image
if ($_FILES['video3']['size'] <= 500000000000)
{
// teste de la prise en compte du chemin et de l'extention du fichier
$infosfichier = pathinfo($_FILES['video3']['name']);//on prend le nom du fichier
$extension_upload = $infosfichier['extension']; //on prend l'extension du fichier
$extensions_autorisees = array('mp4', 'avi', 'vob','flv','rmvb', 'wmv', 'swf','mpg','MP4', 'AVI','VOB','FLV','RMVB', 'WMV', 'SWF','MPG', 'jpeg');
//on prend les extensions autorisées
if (in_array($extension_upload, $extensions_autorisees))
{
move_uploaded_file($_FILES['video3']['tmp_name'], 'videos/mesvideos/'.basename($_FILES['video3']['name']));
$video3=$_FILES['video3']['name'];
/* echo "L'envoi de la photo a bien réussi. Merci!"; */
}
}
}
//echo "L'envoi de la vidéo a bien réussi. Merci!";
if(empty($video1) /* OR empty($photo2) OR empty($photo3) */)
{
$video1="pasimage1.jpeg";
/*$photo2="pasimage2.jpeg";
$photo3="pasimage3.jpeg"; */
}
// Insertion des données à l'aide d'une requête preparée
$req = $bdd->prepare('INSERT INTO videos(titre, genre, description, today, video1, video2, video3)
VALUES(:titre, :genre, :description, :today, :video1, :video2, :video3)');
$req->execute(array(
'titre'=>$_POST['titre'],
'genre'=>$genre,
'description'=>$description,
'video1'=>$video1,
'video2'=>$video2,
'video3'=>$video3,
'today' => date('y-m-d' ))) or die (print_r($req->errorInfo()));
if ($req)
{
echo 'Enregistrement effectue <a href="index.php">Page daccueil</a>';
}
else
{
echo 'Mauvais enregistrement!';
}
if (isset($_POST['video1']))
{
echo ('operation.php');
echo 'Vous avez choisi '.$id_videos;
}
}
?>
<!-- PAGINATION NUMEROTATION DE PAGE PAGINATION NUMEROTATION DE PAGE \ -->
<?php
$page = isset($_GET['page']) ? $_GET['page'] : 1;
$page_offset = ($page - 1) * 5;
$total ='';
$pagination ='';
//connect_bd(); CONNEXION A LA BASE DE DONNEES
//include ('fonctions.php');
$total_element = $bdd->query("SELECT * from videos");
$total = $total_element->rowCount(); /* or die (print_r($total_element->errorInfo())) */
$pagination = $total/5;
$req=$bdd->query("select * from videos ORDER BY id_videos DESC LIMIT $page_offset, 5 ") or die(print_r($bdd->errorInfo()));
//var_dump();
while($donnees = $req->fetch())
{
echo '<table border="1px"; width:800px; height:500px; color="#999";>
<tr>
<td> Vidéo: '.$donnees['id_videos'].'</br>Titre: '.$donnees['titre'].'</br>Genre: '.$donnees['genre'].'</br>Description:'.$donnees['description'].'</br>Date: '.$donnees['today'].'</br></td>'.'<td><a href="operation.php?id='.$donnees['id_videos'].'">
<iframe src="videos/mesvideos/'.$donnees['video1'].'"style=" width:320px; height:231px; color="#0000"; >
</iframe></a></br></br></td></tr></table>';
/*
echo '<a href="operation.php?id='.$donnees['id_videos'].'"> Regarder </a> ';
echo '<a href="details.php?id='.$donnees['id_videos'].'"> LIRE </a>';
*/
}
$req->closeCursor();
echo '<p align="center">Page : '; //Pour l'affichage, on centre la liste des pages
for($i=1; $i<=$pagination; $i++) //On fait notre boucle
{
if($i==$page) //Si il s'agit de la page actuelle...
{
echo ' [ '.$i.' ] ';
}
else //Sinon...
{
echo ' <a href="index.php?page='.$i.'">'.$i.'</a> ';
}
}
echo '</p>';
?>
<!-- </body>
<html> -->
Vous pouvez créer ces 2 pages ainsi que la base de données dont je vous ai fourni tous les codes pour que vous puissiez bien analyser.
Merci pour l'aide!
jordane45
Messages postés38307Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention23 novembre 20244 705 11 août 2018 à 15:43
Trouvez des réponses à vos questions sur la création de sites web, le référencement et les meilleures pratiques pour gérer un site. Échangez avec d'autres webmasters passionnés pour améliorer vos compétences en ligne et optimiser vos projets de site web.