Envoie image base de donnée php/mysql
Résolu
lionel
-
le père -
le père -
Bonjour,
J'ai un petit soucis j'ai créer un formulaire pour entree des information dans une base de donnee, je vous montre ci-dessous mon code php et mon formulaire mais j'ai le résultat suivant, pouvez-vous m'aider:
MAXSIZE) || ($_FILES['image2']['size'] > MAXSIZE) || ($_FILES['image3']['size'] > MAXSIZE) || ($_FILES['image4']['size'] > MAXSIZE) || ($_FILES['image5']['size'] > MAXSIZE)) echo 'Votre image est suprieure la taille maximale de '.MAXSIZE.' octets'; else { //on se connecte (remplacer les paramtres de connexion) $connexion = mysql_connect("localhost", "root", "") or exit (mysql_error()); $database = mysql_select_db("vehicules_neufs") or exit (mysql_error()); //rcupration des infos saisies $nom = mysql_escape_string($_POST['nom']); $carrosserie = mysql_escape_string($_POST['carrosserie']); $version = mysql_escape_string($_POST['version']); $description = mysql_escape_string($_POST['description']); //Lecture du fichier. On doit utiliser la fonction mysql_escape_string car les donnes binaires contiennent des caractres spciaux. $image = mysql_escape_string(file_get_contents($_FILES['image']['tmp_name'])); $image2 = mysql_escape_string(file_get_contents($_FILES['image2']['tmp_name'])); $image3 = mysql_escape_string(file_get_contents($_FILES['image3']['tmp_name'])); $image4 = mysql_escape_string(file_get_contents($_FILES['image4']['tmp_name'])); $image5 = mysql_escape_string(file_get_contents($_FILES['image5']['tmp_name'])); //Il ne reste qu' insrer tout a dans notre table. mysql_query("INSERT INTO vehicules(nom, carrosserie, version, description, image, extension, image2, extension2, image3, extension3, image4, extension4, image5, extension5) VALUES('".$nom."', '".$carrosserie."', '".version."', '".$description."', '".$image."', '".$_FILES['image']['type']."', '".$image2."', '".$_FILES['image2']['type']."', '".$image3."', '".$_FILES['image3']['type']."', '".$image4."', '".$_FILES['image4']['type']."', '".$image5."', '".$_FILES['image5']['type']."')") or exit (mysql_error()); mysql_close(); echo '
L\'insertion s\'est bien droulé !
'; } } } } ?>
et mon code:
J'ai un petit soucis j'ai créer un formulaire pour entree des information dans une base de donnee, je vous montre ci-dessous mon code php et mon formulaire mais j'ai le résultat suivant, pouvez-vous m'aider:
MAXSIZE) || ($_FILES['image2']['size'] > MAXSIZE) || ($_FILES['image3']['size'] > MAXSIZE) || ($_FILES['image4']['size'] > MAXSIZE) || ($_FILES['image5']['size'] > MAXSIZE)) echo 'Votre image est suprieure la taille maximale de '.MAXSIZE.' octets'; else { //on se connecte (remplacer les paramtres de connexion) $connexion = mysql_connect("localhost", "root", "") or exit (mysql_error()); $database = mysql_select_db("vehicules_neufs") or exit (mysql_error()); //rcupration des infos saisies $nom = mysql_escape_string($_POST['nom']); $carrosserie = mysql_escape_string($_POST['carrosserie']); $version = mysql_escape_string($_POST['version']); $description = mysql_escape_string($_POST['description']); //Lecture du fichier. On doit utiliser la fonction mysql_escape_string car les donnes binaires contiennent des caractres spciaux. $image = mysql_escape_string(file_get_contents($_FILES['image']['tmp_name'])); $image2 = mysql_escape_string(file_get_contents($_FILES['image2']['tmp_name'])); $image3 = mysql_escape_string(file_get_contents($_FILES['image3']['tmp_name'])); $image4 = mysql_escape_string(file_get_contents($_FILES['image4']['tmp_name'])); $image5 = mysql_escape_string(file_get_contents($_FILES['image5']['tmp_name'])); //Il ne reste qu' insrer tout a dans notre table. mysql_query("INSERT INTO vehicules(nom, carrosserie, version, description, image, extension, image2, extension2, image3, extension3, image4, extension4, image5, extension5) VALUES('".$nom."', '".$carrosserie."', '".version."', '".$description."', '".$image."', '".$_FILES['image']['type']."', '".$image2."', '".$_FILES['image2']['type']."', '".$image3."', '".$_FILES['image3']['type']."', '".$image4."', '".$_FILES['image4']['type']."', '".$image5."', '".$_FILES['image5']['type']."')") or exit (mysql_error()); mysql_close(); echo '
L\'insertion s\'est bien droulé !
'; } } } } ?>
et mon code:
<head> <title>Envoyer une image</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> label { display:block; width:150px; float:left; } </style> <!-- page de style CSS --> <link rel="stylesheet" media="screen" type="text/css" title="Design" href="../style/designformulaire.css" /> </head> <body> <?php if(isset($_POST['validation'])) { //Indique si le fichier a été téléchargé if(!is_uploaded_file($_FILES['image']['tmp_name'])) echo 'Un problme est survenu durant l opration. Veuillez ressayer !'; else { //liste des extensions possibles $extensions = array('/png', '/gif', '/jpg', '/jpeg'); //rcupre la chane partir du dernier / pour connatre l'extension $extension = strrchr($_FILES['image']['type'], '/'); $extension2 = strrchr($_FILES['image2']['type'], '/'); $extension3 = strrchr($_FILES['image3']['type'], '/'); $extension4 = strrchr($_FILES['image4']['type'], '/'); $extension5 = strrchr($_FILES['image5']['type'], '/'); //vrifie si l'extension est dans notre tableau if((!in_array($extension, $extensions)) || (!in_array($extension2, $extensions)) || (!in_array($extension3, $extensions)) || (!in_array($extension4, $extensions)) || (!in_array($extension5, $extensions))) echo 'Vous devez uploader un fichier de type png, gif, jpg, jpeg.'; else { //on dfinit la taille maximale define('MAXSIZE', 1000000); if(($_FILES['image']['size'] > MAXSIZE) || ($_FILES['image2']['size'] > MAXSIZE) || ($_FILES['image3']['size'] > MAXSIZE) || ($_FILES['image4']['size'] > MAXSIZE) || ($_FILES['image5']['size'] > MAXSIZE)) echo 'Votre image est suprieure la taille maximale de '.MAXSIZE.' octets'; else { //on se connecte (remplacer les paramtres de connexion) $connexion = mysql_connect("localhost", "root", "") or exit (mysql_error()); $database = mysql_select_db("vehicules_neufs") or exit (mysql_error()); //rcupration des infos saisies $nom = mysql_escape_string($_POST['nom']); $carrosserie = mysql_escape_string($_POST['carrosserie']); $version = mysql_escape_string($_POST['version']); $description = mysql_escape_string($_POST['description']); //Lecture du fichier. On doit utiliser la fonction mysql_escape_string car les donnes binaires contiennent des caractres spciaux. $image = mysql_escape_string(file_get_contents($_FILES['image']['tmp_name'])); $image2 = mysql_escape_string(file_get_contents($_FILES['image2']['tmp_name'])); $image3 = mysql_escape_string(file_get_contents($_FILES['image3']['tmp_name'])); $image4 = mysql_escape_string(file_get_contents($_FILES['image4']['tmp_name'])); $image5 = mysql_escape_string(file_get_contents($_FILES['image5']['tmp_name'])); //Il ne reste qu' insrer tout a dans notre table. mysql_query("INSERT INTO vehicules(nom, carrosserie, version, description, image, extension, image2, extension2, image3, extension3, image4, extension4, image5, extension5) VALUES('".$nom."', '".$carrosserie."', '".version."', '".$description."', '".$image."', '".$_FILES['image']['type']."', '".$image2."', '".$_FILES['image2']['type']."', '".$image3."', '".$_FILES['image3']['type']."', '".$image4."', '".$_FILES['image4']['type']."', '".$image5."', '".$_FILES['image5']['type']."')") or exit (mysql_error()); mysql_close(); echo '<h3>L\'insertion s\'est bien droulé !</h3>'; } } } } ?> <!-- logo --> <div class="logo"> <img src="../image/logo.png" alt="logo renault" title="logo renault" /> </div> <!-- création de l'entête ( barre grise de fond) --> <div class="entete"> <p>Entrer ici la liste des nouveaux véhicules<br /></p> </div> <h1>Formulaire de saisie:</h1> <form enctype="multipart/form-data" action="../php/entree_nouveau_vehicule.php" method="post"> <p> <label for="nom">Nom : </label><input type="text" name="nom" id="nom" size="20" maxlength="40"/><br /><br /> <label for="carrosserie">Carrosserie :</label> <select name="carrosserie"> <option value="france">Berline</option> <option value="espagne">Break</option> <option value="italie">Cabriolet</option> <option value="france">Citadine</option> <option value="espagne">Coupé</option> <option value="italie">Ludospace</option> <option value="france">Monospace</option> <option value="espagne">Préstige</option> <option value="italie">Routière</option> <option value="france">S.U.V</option> <option value="espagne">Utilitaire</option> </select><br /><br /> <label for="version">Version :</label><input type="text" name="version" size="35"/><br /><br /> <label for="description">Description : </label><textarea name="description" id="description" rows="10" cols="50"></textarea><br /><br /> <label for="image">Image obligatoire : </label><input type="file" name="image" id="image" /><br /> <label for="image2">Image 2: </label><input type="file" name="image2" id="image2" /><br /> <label for="image3">Image 3: </label><input type="file" name="image3" id="image3" /><br /> <label for="image4">Image 4: </label><input type="file" name="image4" id="image4" /><br /> <label for="image5">Image 5: </label><input type="file" name="image5" id="image5" /><br /><br /><br /> <input type="submit" name="validation" id="validation" value="Valider" /> </p> </form> </body> </html>
A voir également:
- Envoie image base de donnée php/mysql
- Base de registre - Guide
- Image iso - Guide
- Frédéric cherche à faire le buzz sur les réseaux sociaux. il a ajouté une image de manchots sur une image de plage. retrouvez l'image originale de la plage. que cachent les manchots ? ✓ - Forum Windows
- Envoie impossible messenger - Forum Facebook Messenger
- Formules excel de base - Guide
5 réponses
C'est bien les erreur comme cela qui sont les plus difficiles à detecter
Non, certainement pas ! Si tu utilises un éditeur à coloration syntaxique, ça saute aux yeux !
Mais même sans coloration syntaxique, quand le message d'erreur te dit quel mot et quelle ligne, ça n'est quand même pas trop difficile.
Non, certainement pas ! Si tu utilises un éditeur à coloration syntaxique, ça saute aux yeux !
Mais même sans coloration syntaxique, quand le message d'erreur te dit quel mot et quelle ligne, ça n'est quand même pas trop difficile.
Salut,
est ce que tu as définit dans la table "image" le champs BLOB?
car c'est lui qui va gérer la réception de tes images.
Pour ce qui est du code, j'en ai déjà créer un mais je ne le retrouve pas....
tiens nous au courant..
est ce que tu as définit dans la table "image" le champs BLOB?
car c'est lui qui va gérer la réception de tes images.
Pour ce qui est du code, j'en ai déjà créer un mais je ne le retrouve pas....
tiens nous au courant..
Bonjour
Le code PHP de ton script n'est pas interpreté par PHP.
Quand il rencontre le <?php, c'est une balise inconnue pour lui. Elle se termine au > suivant, et tu vois la suite...
Travailles-tu en local ?
Ton fichier a-t-il bien une extension .php ?
Si tu es en local, l'ouvres-tu bien avec une adresse http://localhost/tapage.php ?
Le code PHP de ton script n'est pas interpreté par PHP.
Quand il rencontre le <?php, c'est une balise inconnue pour lui. Elle se termine au > suivant, et tu vois la suite...
Travailles-tu en local ?
Ton fichier a-t-il bien une extension .php ?
Si tu es en local, l'ouvres-tu bien avec une adresse http://localhost/tapage.php ?
bonjours,
oui je travail en local et merci de répondre si vite, je vien de trouver mon erreur le seul problème est que je n'avais pas ouvert correctement mon script depuis wampserver mais maintenant que j'arive à l'éxécuter j'ai vraiment un problème,
j'ai cela alors que ma variable version est déclarer et entrée dans le formulaire, sur la base de donnée c'est un varchar 40.
Merci
oui je travail en local et merci de répondre si vite, je vien de trouver mon erreur le seul problème est que je n'avais pas ouvert correctement mon script depuis wampserver mais maintenant que j'arive à l'éxécuter j'ai vraiment un problème,
( Notice: Use of undefined constant version - assumed 'version' in C:\wamp\www\tests\php\entree_nouveau_vehicule.php on line 63 )
j'ai cela alors que ma variable version est déclarer et entrée dans le formulaire, sur la base de donnée c'est un varchar 40.
Merci
ta variable $version existe peut-être, mais relis bien ta requête, il n'y a pas $version mais version...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question