Probleme d insertion
Fermé
omar_k
Messages postés
49
Date d'inscription
dimanche 20 juin 2010
Statut
Membre
Dernière intervention
23 janvier 2014
-
27 juin 2011 à 17:53
omar_k Messages postés 49 Date d'inscription dimanche 20 juin 2010 Statut Membre Dernière intervention 23 janvier 2014 - 1 juil. 2011 à 01:52
omar_k Messages postés 49 Date d'inscription dimanche 20 juin 2010 Statut Membre Dernière intervention 23 janvier 2014 - 1 juil. 2011 à 01:52
A voir également:
- Probleme d insertion
- Insertion liste déroulante excel - Guide
- Insertion sommaire word - Guide
- Insertion signature word - Guide
- Insertion filigrane word - Guide
- Touche insertion clavier - Guide
8 réponses
Bonjour
addslashes est une fonction PHP, elle ne donnera rien du tout si tu la mets à l'intérieur d'une chaîne
Je me suis permis d'utiliser mysql_real_escape_string plutôt que addslashes qui n'est pas adapté à mysql.
addslashes est une fonction PHP, elle ne donnera rien du tout si tu la mets à l'intérieur d'une chaîne
mysql_query ("INSERT INTO images (img_nom,img_taille,img_type,img_blob) VALUES ('$img_nom', '$img_taille', '$img_type', '".mysql_real_escape_string($img_blob)."') ") or die (mysql_error ()); )
Je me suis permis d'utiliser mysql_real_escape_string plutôt que addslashes qui n'est pas adapté à mysql.
jee pee
Messages postés
40718
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
24 janvier 2025
9 506
27 juin 2011 à 17:57
27 juin 2011 à 17:57
Salut,
Dans INTO tu as 4 champs et dans VALUES 6 champs, ça ne colle pas ($img_type est présent 3 fois)
cdlt
Dans INTO tu as 4 champs et dans VALUES 6 champs, ça ne colle pas ($img_type est présent 3 fois)
cdlt
tang1995
Messages postés
762
Date d'inscription
vendredi 21 novembre 2008
Statut
Membre
Dernière intervention
8 mai 2012
152
27 juin 2011 à 17:57
27 juin 2011 à 17:57
dans ton code tu insére plusieurs fois img type normalement tu ne peus insérer les valeurs qu'une seule fois Je pense que l'erreur vient d'ici.
omar_k
Messages postés
49
Date d'inscription
dimanche 20 juin 2010
Statut
Membre
Dernière intervention
23 janvier 2014
27 juin 2011 à 18:00
27 juin 2011 à 18:00
j ai rectifier le truc ..ca ne marche tjr pa :s
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ce n'est plus la même erreur... Peux-tu donner le début de ton script, jusqu'à la ligne 38 ?
Je n'ai jamais vu ce message d'erreur avant, il semblerait que tu aies refermé ta connexion au serveur trop tôt .
Je n'ai jamais vu ce message d'erreur avant, il semblerait que tu aies refermé ta connexion au serveur trop tôt .
omar_k
Messages postés
49
Date d'inscription
dimanche 20 juin 2010
Statut
Membre
Dernière intervention
23 janvier 2014
27 juin 2011 à 18:31
27 juin 2011 à 18:31
<html>
<body>
<?php
if ( isset($_FILES['image']) )
{
$ret = false;
$img_blob = '';
$img_taille = 0;
$img_type = '';
$img_nom = '';
$taille_max = 25000000;
$hote = 'localhost';
$base = 'documents';
$user = 'root';
$pass = '';
$ret = is_uploaded_file ($_FILES['image']['tmp_name']);
if ( !$ret )
{
echo "Problème de transfert";
return false;
}
else
{
// Le fichier a bien été reçu
$img_taille = $_FILES['image']['size'];
if ( $img_taille > $taille_max )
{
echo "Trop gros !";
return false;
}
$img_type = $_FILES['image']['type'];
$img_nom = $_FILES['image']['name'];
$img_blob = file_get_contents ($_FILES['image']['tmp_name']);
$cnx = mysql_connect ($hote, $user, $pass) or die (mysql_error ());
$ret = mysql_select_db ($base) or die (mysql_error ());
mysql_query ("INSERT INTO images (img_nom,img_taille,img_type,img_blob) VALUES ('$img_nom', '$img_taille', '$img_type', '".mysql_real_escape_string($img_blob)."') ") or die (mysql_error ());
mysql_close();
}
}
?>
</body>
</html>
voila le scripte en entier ...c pour uploader une image et la mettre dans une table mysql voila
<body>
<?php
if ( isset($_FILES['image']) )
{
$ret = false;
$img_blob = '';
$img_taille = 0;
$img_type = '';
$img_nom = '';
$taille_max = 25000000;
$hote = 'localhost';
$base = 'documents';
$user = 'root';
$pass = '';
$ret = is_uploaded_file ($_FILES['image']['tmp_name']);
if ( !$ret )
{
echo "Problème de transfert";
return false;
}
else
{
// Le fichier a bien été reçu
$img_taille = $_FILES['image']['size'];
if ( $img_taille > $taille_max )
{
echo "Trop gros !";
return false;
}
$img_type = $_FILES['image']['type'];
$img_nom = $_FILES['image']['name'];
$img_blob = file_get_contents ($_FILES['image']['tmp_name']);
$cnx = mysql_connect ($hote, $user, $pass) or die (mysql_error ());
$ret = mysql_select_db ($base) or die (mysql_error ());
mysql_query ("INSERT INTO images (img_nom,img_taille,img_type,img_blob) VALUES ('$img_nom', '$img_taille', '$img_type', '".mysql_real_escape_string($img_blob)."') ") or die (mysql_error ());
mysql_close();
}
}
?>
</body>
</html>
voila le scripte en entier ...c pour uploader une image et la mettre dans une table mysql voila
Il est gros comment le fichier que tu essayes de charger ? Il n'y aurait pas une limitation au niveau de ta base de données ? Essaye avec un tout petit fichier pour voir.
Je ne te répondrai pas tout de suite, je vais m'absenter quelques heures.
Je ne te répondrai pas tout de suite, je vais m'absenter quelques heures.
omar_k
Messages postés
49
Date d'inscription
dimanche 20 juin 2010
Statut
Membre
Dernière intervention
23 janvier 2014
27 juin 2011 à 19:08
27 juin 2011 à 19:08
ya pa de probleme c est egntil de m accorder un peu de temps quand meme :)
j ai essaiyr avec un petit document text et ca marche !!
si tu trouve une solution pr l image fait moi signe ..je v chercher de mon coté aussi ! merci
j ai essaiyr avec un petit document text et ca marche !!
si tu trouve une solution pr l image fait moi signe ..je v chercher de mon coté aussi ! merci
Donc le problème, c'est une limitation de taille ou de durée...
Ça marcherait dans doute nettement mieux si tu sauvegardais tes fichiers avec le système de fichier (il est fait pour ça...), dans un dossier quelconque avec un move_uploaded_file, et que tu n'enregistres dans la base que le nom du fichier. Personnellement, j'ai toujours procédé comme ça.
Ça marcherait dans doute nettement mieux si tu sauvegardais tes fichiers avec le système de fichier (il est fait pour ça...), dans un dossier quelconque avec un move_uploaded_file, et que tu n'enregistres dans la base que le nom du fichier. Personnellement, j'ai toujours procédé comme ça.
omar_k
Messages postés
49
Date d'inscription
dimanche 20 juin 2010
Statut
Membre
Dernière intervention
23 janvier 2014
30 juin 2011 à 21:36
30 juin 2011 à 21:36
oui c ce que j" ai fait pour les documents PDF.
j enregistre le path dans la base de donnees et le document sur un fichier du serveur WAMP .
le probleme maintenant c est de telecharger ce document du serveur :D. si c possible de m aider encore merci .
j enregistre le path dans la base de donnees et le document sur un fichier du serveur WAMP .
le probleme maintenant c est de telecharger ce document du serveur :D. si c possible de m aider encore merci .
Bonsoir
Un simple lien suffit, si tu as mis le document dans un dossier accessible par http.
Un simple lien suffit, si tu as mis le document dans un dossier accessible par http.
omar_k
Messages postés
49
Date d'inscription
dimanche 20 juin 2010
Statut
Membre
Dernière intervention
23 janvier 2014
1 juil. 2011 à 01:52
1 juil. 2011 à 01:52
j ai pa compris ce que tu voulai dir !
<html>
<body>
<?php
if ( isset($_FILES['pdf']) )
{
$ret = false;
$pdf_titre= '';
$nom='';
$pdf_description='';
$pdf_taille = '';
$chemin='d:/wamp/www/fichiers/';
$rep_destination='';
$hote = 'localhost';
$base = 'gestiondoc';
$user = 'root';
$pass = '';
$ret = is_uploaded_file ($_FILES['pdf']['tmp_name']);
if ( !$ret )
{
echo "Problème de transfert";
return false;
}
else
{
$pdf_titre=$_POST['titre'];
$pdf_description=$_POST['description'];
$pdf_taille = $_FILES['pdf']['size'];
$nom=$_FILES['pdf']['name'];
$pdf_url=$chemin.$nom;
move_uploaded_file($_FILES['pdf']['tmp_name'],$chemin.$_FILES['pdf']['name']);
$cnx = mysql_connect ($hote, $user, $pass) or die (mysql_error ());
$ret = mysql_select_db ($base) or die (mysql_error ());
mysql_query ("INSERT INTO pdf (pdf_titre,pdf_url,pdf_description,pdf_taille,pdf_name) VALUES ('$pdf_titre','$pdf_url','$pdf_description','$pdf_taille','$nom')") or die (mysql_error ());
mysql_close();
}
}
?>
</body>
</html>
voila mon code donne moi ton avis et merci encore !
<html>
<body>
<?php
if ( isset($_FILES['pdf']) )
{
$ret = false;
$pdf_titre= '';
$nom='';
$pdf_description='';
$pdf_taille = '';
$chemin='d:/wamp/www/fichiers/';
$rep_destination='';
$hote = 'localhost';
$base = 'gestiondoc';
$user = 'root';
$pass = '';
$ret = is_uploaded_file ($_FILES['pdf']['tmp_name']);
if ( !$ret )
{
echo "Problème de transfert";
return false;
}
else
{
$pdf_titre=$_POST['titre'];
$pdf_description=$_POST['description'];
$pdf_taille = $_FILES['pdf']['size'];
$nom=$_FILES['pdf']['name'];
$pdf_url=$chemin.$nom;
move_uploaded_file($_FILES['pdf']['tmp_name'],$chemin.$_FILES['pdf']['name']);
$cnx = mysql_connect ($hote, $user, $pass) or die (mysql_error ());
$ret = mysql_select_db ($base) or die (mysql_error ());
mysql_query ("INSERT INTO pdf (pdf_titre,pdf_url,pdf_description,pdf_taille,pdf_name) VALUES ('$pdf_titre','$pdf_url','$pdf_description','$pdf_taille','$nom')") or die (mysql_error ());
mysql_close();
}
}
?>
</body>
</html>
voila mon code donne moi ton avis et merci encore !
27 juin 2011 à 18:12
Fatal error: Call to undefined function mysql_real_escape() in D:\wamp\www\ProjetDoc\chargement.php
27 juin 2011 à 18:14
27 juin 2011 à 18:19
27 juin 2011 à 18:22
Warning: mysql_query() [function.mysql-query]: MySQL server has gone away in D:\wamp\www\ProjetDoc\chargement.php on line 38
Warning: mysql_query() [function.mysql-query]: Error reading result set's header in D:\wamp\www\ProjetDoc\chargement.php on line 38
MySQL server has gone away