L'insertion en php

Résolu/Fermé
bidlag Messages postés 19 Date d'inscription lundi 22 juin 2015 Statut Membre Dernière intervention 25 novembre 2015 - Modifié par jordane45 le 27/07/2015 à 19:32
bidlag Messages postés 19 Date d'inscription lundi 22 juin 2015 Statut Membre Dernière intervention 25 novembre 2015 - 29 juil. 2015 à 02:47
Bonjour;
Possible qlq me dire qu'il est l'erreur dans ce code ; il m'affiche que les données bien enregistrer mes la base de donné ne reçois pas les données??
Cordialement;
<?php
//require"../sqlconnect.php";
$db = new PDO('mysql:host=localhost;dbname=sadatv', 'root', '',array (PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''));
echo' <meta charset="utf-8" />';
/**


* Created by PhpStorm.

* User: B.Youssef

* Date: 24/07/2015

* Time: 23:22

*/
    include '../Admin/accueilChange.php';
    echo '
<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
<title>Ajout videotube</title>
</head>
<body>
<form method="post">
<select name="typevideo">
    <option>...</option>
    <option>??????</option>
    <option>????? ?? ????? </option>
    <option>??? ??????</option>
    <option>??????</option>
    <option>?????</option>
    <option>????</option>
    <option>???????</option>
    <option>???????</option>
    <option>spot</option>
</select>
<label>IFrame Vidéotube : </label><textarea name="lien"> </textarea>
<label>Titre Vidéotube : </label><input type="text" name="titrevideo" placeholder="titre de la vidéo">
<label>Image Vidéotube : </label><input type="file" name="image"><br><br/>
<input type="submit" name="ajout" value="Valider">
</form>
';
if(isset($_POST['ajout']))
{
    $image_name=$_FILES['image']['name'];
    $image_type=$_FILES['image']['type'];
    $image_size=$_FILES['image']['size'];
    $image_tmp_name=$_FILES['image']['tmp_name'];
    move_uploaded_file($image_tmp_name, "../Admin/imagevideostube/$image_name");
    //$db->exec('INSERT INTO videotube (id,lien) VALUES ("","'.$_POST['lien'].'")');
    $db->exec('INSERT INTO `videotube`(`id`, `lien`, `img`, `titre`, `typevideo`) VALUES  ("","'.$_POST['lien'].'","'.$image_name.'","'.$_POST['titrevideo'].'","'.$_POST['typevideo'].'")');

    echo'<script>alert("l\'ajout fait avec succés")</script>';
}
echo'</body></html>';



EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

Merci d'y penser dans tes prochains messages.
.
A voir également:

2 réponses

jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
Modifié par jordane45 le 27/07/2015 à 19:50
Bonjour,


Essayes ça :
<?php

//require"../sqlconnect.php";
//-----------------------------------------------------------------------------------//
//Connexion à la BDD
//-----------------------------------------------------------------------------------//

try{
  $db = new PDO('mysql:host=localhost;dbname=sadatv', 'root', '',array (PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''));
}catch (PDOException $e) {
 printf("%s:%d %s (%d) [%s]\n", $e->getFile(), $e->getLine(), $e->getMessage(), $e->getCode(), get_class($e));
 var_dump(debug_backtrace());   
 }

//-----------------------------------------------------------------------------------//
//Traitement du SUBMIT
//-----------------------------------------------------------------------------------//

//Recuperation propre des variables
$lien          = !empty($_POST['lien'])?$_POST['lien']:'';
$titrevideo    = !empty($_POST['titrevideo'])?$_POST['titrevideo']:'';
$typevideo     = !empty($_POST['typevideo'])?$_POST['typevideo']:'';

$image_name    = !empty($_FILES['image']['name'])?$_FILES['image']['name']:NULL;
$image_type    = !empty($_FILES['image']['type'])?$_FILES['image']['type']:'';
$image_size    = !empty($_FILES['image']['size'])?$_FILES['image']['size']:''
$image_tmp_name= !empty($_FILES['image']['tmp_name'])?$_FILES['image']['tmp_name']:NULL;

if(isset($_POST['ajout'])){
 if($image_name && $image_tmp_name){
  if(move_uploaded_file($image_tmp_name, "../Admin/imagevideostube/$image_name")){
    
   //Preparation de la requete :
   $sql = "INSERT INTO videotube (lien,img,titre,typevideo)
       VALUES(:lien,:img,:titre,:typevideo)"; 
   
   $params=array(":lien"=>$lien,":img"=>$image_name,":titre"=>$titrevideo,":typevideo"=>$typevideo);

    //execution de la requête  
    try{ 
     $prepare = $db->prepare($sql);
     $prepare->execute($params);
      $new_id = $db->lastInsertId();
    } catch(Exception $e){
     echo "<pre><br>".$e->getMessage()."<br>";
     var_dump(debug_backtrace()); 
     echo "</pre>";
    }
   // Si l'insertion a fonctionné.. un id a été créé..et donc :
   if(isset($new_id)){
    echo'<script>alert("l\'ajout fait avec succés ")</script>';
   }
  
  }else{
    echo'<script>alert("Erreur ! \n >> l\'upload a échoué ! ")</script>';
  }
 }else{
  //Erreur ! $_FILES est vide
   echo "Erreur ! Aucun fichier !";
   print_r($_FILES);
 }
}



echo' <meta charset="utf-8" />';
/**
* Created by PhpStorm.
* User: B.Youssef
* Date: 24/07/2015
* Time: 23:22
*/
require_once '../Admin/accueilChange.php';
echo '
<!doctype html>
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
 <title>Ajout videotube</title>
</head>
<body>
 <form method="post">
 <select name="typevideo">
   <option>...</option>
   <option>??????</option>
   <option>????? ?? ????? </option>
   <option>??? ??????</option>
   <option>??????</option>
   <option>?????</option>
   <option>????</option>
   <option>???????</option>
   <option>???????</option>
   <option>spot</option>
 </select>
 <label>IFrame Vidéotube : </label><textarea name="lien"></textarea>
 <label>Titre Vidéotube : </label><input type="text" name="titrevideo" placeholder="titre de la vidéo">
 <label>Image Vidéotube : </label><input type="file" name="image"><br><br/>
 <input type="submit" name="ajout" value="Valider">
 </form>
';
echo'</body>
   </html>';



Cordialement,
Jordane
1
bidlag Messages postés 19 Date d'inscription lundi 22 juin 2015 Statut Membre Dernière intervention 25 novembre 2015
28 juil. 2015 à 12:20
Merci Mr Jordane;
j'applique l'insertion mais il m'affiche tjr ce msg " Erreur ! Aucun fichier !Array ( ) " malgré que tt les champs sont rempli.
0
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
28 juil. 2015 à 15:44
Je n'avais pas vu ..
c'est ton FORM qui ne va pas.

Il faut mettre:
<form method="post" action="" enctype="multipart/form-data">

0
bidlag Messages postés 19 Date d'inscription lundi 22 juin 2015 Statut Membre Dernière intervention 25 novembre 2015
29 juil. 2015 à 02:47
Merci bcp mon cher le blem est resolut:;:
0