PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Re : Forum Général PHP » réalisation d'une galerie - probleme upload/chemin » 02-08-2012 21:30:50

Merci, c'était la virgule de trop...
j'ai essayé et retourné tout dans tous les sens, et j'ai pas vu la virgule!!


non j'ai que 3 colonnes en varchar, pourquoi?
cela peut poser problème?

#3 Re : Forum Général PHP » réalisation d'une galerie - probleme upload/chemin » 02-08-2012 21:30:50

bonjour,
voilà j'ai avancé, j'arrive a envoyer et récuperer sur server l'image, créer un thumbnail, et générer un certain nombre de variables, que je désirerai entrer dans ma base.
Cependant, j'ai beau retourner le script dans tout les sens rien ne rentre.
j'arrive pas à voir d'ou cela peut provenir



<?php
include "config.php";
include "database.fn.php";

// ***** ici on récupère les données et on les stocke dans mysql
$nom = $_POST['nom'];
$note = $_POST['note'];
 
//******* On renomme l'image de manière aléatoire pour éviter un conflit dans le dossier (2 fois le même nom par exemple

include 'functions.php';

$allowed_ext    = "jpg, gif, png, jpeg, JPG";
$top        = 50;                  
$filename     = $_FILES['image']['name'];


// Is the extension allowed?
$extension = checkext($filename, $allowed_ext);

// connection base
$connect = database_connect($db);
if(!$connect){die("Could not connect to MySQL");}

if ($extension != False)
  {
    // Move the temporary file to the image folder
    $save_to="temp/";
    if ($_POST['send_upload']==1)
      {
        $file_name=$_FILES['image']['name'];
        move_uploaded_file($_FILES['image']['tmp_name'], $save_to.basename($file_name)) or die('Cannot upload image');
        $filepath = $save_to.basename($file_name);
      }

    // Create an image resource from the uploaded image
        if($extension == "jpg" || $extension == "jpeg" || $extension == "JPG"){
          $source=imagecreatefromjpeg($filepath);
        }elseif($extension == "png") {
          $source=imagecreatefrompng($filepath);
        }elseif($extension == "gif") {
          $source=imagecreatefromgif($filepath);
        }
   
    // Resize the image resource
    $width_orig = imagesx( $source );                                 // width of image resource
    $height_orig = imagesy( $source );                                  // height of image resource
    $uploadedimage = $source;                   // Create space for the resized image
 

    //Save the resized image
    if($extension == "jpg" || $extension == "jpeg" || $extension == "JPG"){
      imagejpeg($uploadedimage, $filepath, 100);
        }elseif($extension == "png") {
      imagepng($uploadedimage, $filepath);
        }elseif($extension == "gif") {
          imagegif($uploadedimage, $filepath);
        }


    //Print and clean stuff
    $im =imagejpeg($uploadedimage, "images/genuine/" . $filename );
   
   
    //imagedestroy($im);
    imagedestroy($uploadedimage);
  //  imagedestroy($source);
  }
 
 

 
 
    $im = imagecreatefromjpeg('images/genuine/'.$filename);
 
 
   
        // thumbnail
    list($width, $height) = getimagesize('images/genuine/'.$filename);
    $new_width = 150;
    $new_height = round((150/$width)*$height);

    // Redimensionnement
    $image_p = imagecreatetruecolor($new_width, $new_height);
    imagecopyresampled($image_p, $im, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
    imagejpeg($image_p, 'images/thumbs/'.md5($filename).'-thumb.jpg', 70);
 
    imagedestroy($im);
    imagedestroy($image_p);
 
 
 
$ip = $_SERVER["REMOTE_ADDR"];

$photo = "../images/genuine/" . $filename;
$md5 = md5($filename);
$model = '';
$title = "$filename.";
$today = date("F j, Y, g:i a");
$loc = ($ip);
$warnings = 0;
$candidate = 0;
$accepted = 0;
$date_accepted = 0;

//

echo $nom,"</br>", $photo,"</br>", $md5,"</br>", $loc,"</br>", $today, "</br>";
//var_dump($connect);


$poids = getimagesize('images/genuine/'.$filename);
 
  if($poids !=0)
  {
   
 


// on enregistre les données

$sql = "INSERT INTO poster (nom, note, photo, md5, model, title, date, ip, warning, candidate, accepted, date_accepted) VALUES
(

'".mysql_real_escape_string($nom)."',
'".mysql_real_escape_string($note)."',
'".mysql_real_escape_string($photo)."',
'".mysql_real_escape_string($md5)."',
'".mysql_real_escape_string($model)."',
'".mysql_real_escape_string($title)."',
'".mysql_real_escape_string($today)."',
'".mysql_real_escape_string($loc)."',
'".mysql_real_escape_string($warnings)."',
'".mysql_real_escape_string($candidate)."',
'".mysql_real_escape_string($accepted)."',
'".mysql_real_escape_string($date_accepted)."',

)
";

 mysql_query($sql);


//Si il y a une erreur, on crie ^^
if (!$sql) {
 die('Requête invalide : ' . mysql_error()); echo"$sql";
}


// on ferme la connection mysql donc ci-dessous plus de sql
mysql_close($connect); 
 
   
};
var_dump($sql);

#4 Forum Général PHP » réalisation d'une galerie - probleme upload/chemin » 02-08-2012 21:30:50

lamerehic
Réponses : 7

Salut, je suis débutant et
Je voudrais réaliser une galerie en php.
J’essaie de comprendre et d’utiliser des fonctions php nécessaires pour écrire/lire des chemins d'images dans une bdd,

J'ai une bdd avec une table à 4 champs, id, nom, note, photo.
un fichier de connection php, un fichier config.php, un fichier insert_form.php et un formulaire

mais lorsque j’utilise l’ensemble de fichiers pour uploader et mettre à jour la bdd,
j’ai pas l’image uploadée dans le dossier, le champs « chemin de l’image » ne contient que le nom
J’ai essayé de changer les chemins, absolu/relatif, rien n’y fait. en sachant que les images doivent être dans un sous dossier.



voila le fichier insert_form.php:



<?php
include "config.php";
include "database.fn.php";
$link = database_connect($db);
// ***** ici on récupère les données et on les stocke dans mysql
$nom = $_POST['nom'];
$note = $_POST['note'];
 
//******* On renomme l'image de manière aléatoire pour éviter un conflit dans le dossier (2 fois le même nom par exemple
$dir = 'posters/';
$ext = strtolower( pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION) );
$file=uniqid('',false).'.'.$ext;
 
 //**** on bouge l'image
move_uploaded_file($_FILES['image']['tmp_name'], $dir.$file);
 
$photo = $file;
 
// on enregistre les données
$result = mysql_query("INSERT INTO poster VALUES
(
 '',
'".mysql_real_escape_string($nom)."',
'".mysql_real_escape_string($note)."',
'".mysql_real_escape_string($photo)."'
)
");
//Si il y a une erreur, on crie ^^
if (!$result) {
 die('Requête invalide : ' . mysql_error());
}
// on ferme la connection mysql donc ci-dessous plus de sql
mysql_close($link);
?>
 

au final j'ai une entrée dans la base ayant donc à la place du chemin, le nom et pas de fichier image.
Si quelqu'un à une idée cela m'aiderait grandement.
merci

Pied de page des forums

Propulsé par FluxBB