Enregistrer vidéos dans base de données
Fermé
Busima
Messages postés
55
Date d'inscription
mercredi 10 février 2016
Statut
Membre
Dernière intervention
29 janvier 2021
-
25 juil. 2018 à 15:08
jadu29 Messages postés 44 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 17 juillet 2023 - 16 nov. 2022 à 20:25
jadu29 Messages postés 44 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 17 juillet 2023 - 16 nov. 2022 à 20:25
A voir également:
- Stocker des vidéos dans une base de données
- Formules excel de base - Guide
- La base de données de sécurité du serveur n'a pas de compte d'ordinateur pour la relation ✓ - Forum Réseau
- Tnt base de données vide - Forum TNT / Satellite / Réception
- Célia doit nettoyer le tableau ci-dessous pour l’ajouter à la base de données de son entreprise. les données sont ensuite traitées automatiquement. quelles sont les 4 cellules qui risquent de poser problème ? ✓ - Forum Excel
- Exemple base de données access à télécharger gratuit ✓ - Forum Logiciels
5 réponses
jordane45
Messages postés
38136
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 avril 2024
4 649
25 juil. 2018 à 17:37
25 juil. 2018 à 17:37
Bonjour,
Commence par lire et appliquer les conseils (consignes) données dans ces deux liens :
- https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
- https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code#ou-placer-son-code-php
Reviens nous voir avec ton code modifié si après cela ça ne fonctionne toujours pas.
Commence par lire et appliquer les conseils (consignes) données dans ces deux liens :
- https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
- https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code#ou-placer-son-code-php
Reviens nous voir avec ton code modifié si après cela ça ne fonctionne toujours pas.
jordane45
Messages postés
38136
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 avril 2024
4 649
Modifié le 30 juil. 2018 à 16:15
Modifié le 30 juil. 2018 à 16:15
J'ai remis ton code au propre en respectant ce qui est indiqué dans les liens que je t'ai donné et que tu n'as pas pris la peine de lire et d'appliquer visiblement.....
Voici
Dis moi ce que ça donne.
Voici
<?php error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require_once('connectbd.php'); //-------------------------------------------------------------------// // Fonctions //-------------------------------------------------------------------// /** * Fonction pour uploader les fichier */ function uploadFile($file,$uploadDir = "videos/mesvideos/",$fileMaxSize = 500000000, $extensions_autorisees = array('mp4', 'avi', 'vob', 'flv', 'rmvb', 'wmv', 'swf','mpg','MP4', 'AVI','VOB','FLV','RMVB', 'WMV', 'SWF','MPG', 'jpeg')){ $result = false; // teste de l'envoi du fichier PHOTO 1 if (isset($file) && $file['error']== 0 ) { // teste de la grandeur de la video if ($file['size'] <= $fileMaxSize){ // teste de la prise en compte du chemin et de l'extention du fichier $infosfichier = pathinfo($file['name']);//on prend le nom du fichier $extension_upload = $infosfichier['extension']; //on prend l'extension du fichier //on prend les extensions autorisées if (in_array($extension_upload, $extensions_autorisees)){ if(move_uploaded_file($file['tmp_name'], $uploadDir.basename($file['name']))){ $result=$file['name']; /* echo "L'envoi de la video a bien réussi. Merci!"; */ }else{ echo "<br>Erreur lors de l'upload du fichier ".$file['name']; if(!is_dir($uploadDir)){ echo "<br>Le repertoire ".$uploadDir. " est introuvable"; }else{ if(!is_writable($uploadDir)){ echo "<br>Vous n'avez pas l'autorisation d'écrire dans ce dossier : ".$uploadDir; } } } } } } return $result; } //-------------------------------------------------------------------// // Récupération PROPRE des variables AVANT de les utilser ! //-------------------------------------------------------------------// $titre=!empty($_POST['titre']) ? $_POST['titre'] : NULL; $genre=!empty($_POST['genre']) ? $_POST['genre'] : NULL; $description=!empty($_POST['description']) ? $_POST['description']: NULL; //Autres variables $today = date("y-m-d"); $result_import = ""; //Variables FILES $F1 = !empty($_FILES['video1']) ? $_FILES['video1']: NULL $F2 = !empty($_FILES['video2']) ? $_FILES['video2']: NULL $F3 = !empty($_FILES['video3']) ? $_FILES['video3']: NULL //-------------------------------------------------------------------// //traitement du formulaire //-------------------------------------------------------------------// if (isset($_POST['valider'])){ //on upload les vidéos $upl_video1 = uploadFile($F1); $upl_video2 = uploadFile($F2); $upl_video3 = uploadFile($F3); $video1 = $upl_video1 ? $upl_video1 : "pasimage1.jpeg"; $video2 = $upl_video2 ? $upl_video2 : "pasimage2.jpeg"; $video3 = $upl_video3 ? $upl_video3 : "pasimage3.jpeg"; //on fait l'insertion en BDD $sql = 'INSERT INTO videos(titre, genre, description, today, video1, video2, video3) VALUES(:titre, :genre, :description, :today, :video1, :video2, :video3)', $datas = array( 'titre'=>$titre, 'genre'=>$genre, 'description'=>$description, 'video1'=>$video1, 'video2'=>$video2, 'video3'=>$video3, 'today' =>$today); try{ $req = $bdd->prepare($sql); //$req->execute($datas); // correction suite à commentaire $req->execute(); $result_import = "Enregistrement effectué" }catch(Exception $e){ $result_import = "Erreur lors de l'import".$e->getMessage(); } } //-------------------------------------------------------------------// //Traitement de l'affichage des vidéos //-------------------------------------------------------------------// $page = isset($_GET['page']) ? $_GET['page'] : 1; $page_offset = ($page - 1) + 5; //nombre total de video dans la table $sql = "select count(id_videos) as NB from videos "; try{ $req = $bdd->prepare($sql); $req->execute($datas) $res = $req->fetch(); //on stocke dans un array }catch(Exception $e){ echo "Erreur ".$e->getMessage(); } $total = !empty($res) ? $res['NB'] : 0; $pagination = $total/5; //liste des videos à afficher $sql = "select * from videos ORDER BY id_videos DESC LIMIT $page_offset, 5 "; try{ $req = $bdd->prepare($sql); $req->execute($datas) $listeVideos = $req->fetchAll(); //on stocke dans un array }catch(Exception $e){ echo "Erreur ".$e->getMessage(); } ?> <html> <head> <meta charset="utf-8"> <title>FORMULAIRE D'ENREGISTREMENT D'UNE VIDEO</title> <link rel="stylesheet" href="sogim.css" /> <link rel="stylesheet" href="css/bootstrap.min.css"/> <link rel="stylesheet" href="css/bootstrap-theme.min.css"/> </head> <body id="bloc_page"> <?php echo $result_import; ?> <!-- PAGINATION NUMEROTATION DE PAGE PAGINATION NUMEROTATION DE PAGE --> <?php foreach($listeVideos as $donnees){ 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:220px; height:150px; 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>'; */ } echo '<p align="center">Page : '; //Pour l'affichage, on centre la liste des pages for($i=1; $i<=$pagination; $i++){ if($i==$page){ //Si il s'agit de la page actuelle... echo ' [ '.$i.' ] '; } else { echo ' <a href="index.php?page='.$i.'">'.$i.'</a> '; } } echo '</p>'; ?> </body> <html>
Dis moi ce que ça donne.
Busima
Messages postés
55
Date d'inscription
mercredi 10 février 2016
Statut
Membre
Dernière intervention
29 janvier 2021
1
26 juil. 2018 à 19:03
26 juil. 2018 à 19:03
Merci pour l'aide le grand Jordane. Avec mon code j'arrive actuellement à afficher tous mes enregistrements, seulement qu'il se pose un problème avec les vidéos. D'autres de mes vidéos ne se lisent pas sur mon site je ne sais pas pourquoi. Ce sont des vidéos qui ont un height supérieur qui ne se lisent, je n'entend que leurs sons. Les films également ne se lisent pas. De plus je veux savoir savoir quel unité de mésure informatique l'on utilise pour tester la grandeur des vidéos(size[videos])? Cela me permettra de savoir à combien je dois mettre la taille pour pouvoir enregistrer même des films faisant des heures.
yg_be
Messages postés
22692
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
16 avril 2024
1 471
>
Busima
Messages postés
55
Date d'inscription
mercredi 10 février 2016
Statut
Membre
Dernière intervention
29 janvier 2021
28 juil. 2018 à 19:21
28 juil. 2018 à 19:21
je suggère d'abord d'ajouter un else correspondant à
si c'est bien cela qui bloque, je suggère ensuite d'augmenter la taille maximum (en octets), en modifiant:
if ($file['size'] <= $fileMaxSize)et d'afficher un message indiquant que le fichier est trop grand, et sa taille.
si c'est bien cela qui bloque, je suggère ensuite d'augmenter la taille maximum (en octets), en modifiant:
$fileMaxSize = 500000000
jordane45
Messages postés
38136
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 avril 2024
4 649
5 août 2018 à 22:21
5 août 2018 à 22:21
Quelles sont les limites definies dans la config de ton php ?
upload_max_filesize et post_max_size ?
upload_max_filesize et post_max_size ?
jadu29
Messages postés
44
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
17 juillet 2023
9
30 juil. 2018 à 15:26
30 juil. 2018 à 15:26
Pardon, le sujet m'intéresse mais je me pose une question avant de copier-coller ce code ! ;-)
d'où vient le $data ???
j'ai du louper un cours !
merci de l'éclaircissement !
//nombre total de video dans la table
$sql = "select count(id_videos) as NB from videos ";
try{
$req = $bdd->prepare($sql);
$req->execute($datas)
$res = $req->fetch(); //on stocke dans un array
}catch(Exception $e){
echo "Erreur ".$e->getMessage();
}
d'où vient le $data ???
j'ai du louper un cours !
merci de l'éclaircissement !
jordane45
Messages postés
38136
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 avril 2024
4 649
Modifié le 30 juil. 2018 à 16:15
Modifié le 30 juil. 2018 à 16:15
D'une erreur de copier coller.
Pour ton cas, le $datas doit être retiré ou alors initialisé à NULL.
Cela sert lorsque tu as des variables à transmettre
Par exemple :
NB: Merci de bien vouloir utiliser LA COLORATION SYNTAXIQUE lorsque tu postes ton code.
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Pour ton cas, le $datas doit être retiré ou alors initialisé à NULL.
Cela sert lorsque tu as des variables à transmettre
Par exemple :
//nombre total de video dans la table $sql = "select * from videos WHERE id_videos = :id"; $datas = array(':id'=>10); try{ $req = $bdd->prepare($sql); $req->execute($datas); $res = $req->fetch(); //on stocke dans un array }catch(Exception $e){ echo "Erreur ".$e->getMessage(); }
NB: Merci de bien vouloir utiliser LA COLORATION SYNTAXIQUE lorsque tu postes ton code.
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Busima
Messages postés
55
Date d'inscription
mercredi 10 février 2016
Statut
Membre
Dernière intervention
29 janvier 2021
1
13 sept. 2018 à 19:51
13 sept. 2018 à 19:51
Jadu, tu te retrouves avec l'explication de Jordane???
Busima
Messages postés
55
Date d'inscription
mercredi 10 février 2016
Statut
Membre
Dernière intervention
29 janvier 2021
1
13 sept. 2018 à 19:50
13 sept. 2018 à 19:50
Je vous remercie, j'ai pu m'en sortir en créant une chaine Youtube pour y stocker mes vidéos et en enregistrant tout simplement les liens dans ma bdd. Encore merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Oui la réponse de Jordane était claire.
Mais j'ai tellement de chantiers en cours !
Là je remonte un PC et un portable !
La vie est un long long long fleuve parfois tranquille !
Busina, ta solution paraît très judicieuse, en fait !
Youtube stocke et toi tu n'as que des liens à mettre en base !
Nickel !
Tant que Youtube existe sans censure !!!!
Mais j'ai tellement de chantiers en cours !
Là je remonte un PC et un portable !
La vie est un long long long fleuve parfois tranquille !
Busina, ta solution paraît très judicieuse, en fait !
Youtube stocke et toi tu n'as que des liens à mettre en base !
Nickel !
Tant que Youtube existe sans censure !!!!
jadu29
Messages postés
44
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
17 juillet 2023
9
16 nov. 2022 à 20:25
16 nov. 2022 à 20:25
j'avais mis : Tant que Youtube existe sans censure !!!!
c'est pire que chez pire, en plus ( ou moins plutôt ) de la censure, il y a plein de pubs !!!
mieux vaut faire un serveur chez soi !
25 juil. 2018 à 19:27
25 juil. 2018 à 19:57
26 juil. 2018 à 02:30
code de la page1 categories.php
Ensuite le code de la 2eme page, info.php
Base de données
create database webtv;
create table(id int(10), titre varchar(255), description varchar(255), video1 blob(255), video2 blob(255), video3 blob(255), today(date), primary key(id));