Comment télécharger l'image PHP et insérez chemin dans MySQL?
J'aimerais inclure dans ma table MySQL un chemin vers une image. Le chemin de l'image pénètre dans la table par l'insertion de la valeur d'un "fichier" textfield (un de ceux qui Parcourir genre de transactions). De sorte que la valeur qui est entré est quelque chose comme: image001.jpg
. Mais je n'arrive pas à utiliser cette valeur pour mettre une image dans une page html. si il va dans la table fine, pourquoi je ne peux pas le sortir?
J'ai télécharger une image mais je ne sais pas où il est allé. Car il n'y a pas de valeur entrée dans le champ de l'image quand je l'ai vérifié via PhpMyadmin.
Schéma de la Table
CREATE TABLE employee_details
(
emp_image varchar(255),
employee_name varchar(50),
employee_address varchar(50),
employee_designation varchar(50),
employee_salary int(),
);
Requête
$sql="
INSERT INTO employee_detail(
emp_image,
employee_name,
employee_address,
employee_contact,
employee_designation,
employee_salary
)
VALUES(
'$_POST[emp_image]',
'$_POST[employee_name]',
'$_POST[employee_address]',
'$_POST[employee_contact]',
'$_POST[employee_designation]',
'$_POST[employee_salary]'
)";
poster le code ici..alors vous avez une solution.
montrez votre requête et de table
C'est différent de simplement définir un nom de fichier / chemin d'accès à votre base de données en comparaison avec le téléchargement de votre fichier à un chemin spécifique.Vous devez faire les deux.Assurez-vous que votre fichier a été uploadé, et ensuite, vous devriez vérifier que vous avez téléchargé le chemin de l'image dans votre ct de la table.Un Simple upload tutoriel peut être trouvé ici: w3schools.com/php/php_file_upload.asp
d'abord s'il vous plaît savoir de mes erreurs..Est leur toute erreur dans mon code?
Injections SQL
montrez votre requête et de table
C'est différent de simplement définir un nom de fichier / chemin d'accès à votre base de données en comparaison avec le téléchargement de votre fichier à un chemin spécifique.Vous devez faire les deux.Assurez-vous que votre fichier a été uploadé, et ensuite, vous devriez vérifier que vous avez téléchargé le chemin de l'image dans votre ct de la table.Un Simple upload tutoriel peut être trouvé ici: w3schools.com/php/php_file_upload.asp
d'abord s'il vous plaît savoir de mes erreurs..Est leur toute erreur dans mon code?
Injections SQL
OriginalL'auteur Muskan | 2013-09-11
Vous devez vous connecter pour publier un commentaire.
Sur votre commentaire vous demandez comment télécharger et stocker les données de mysql. Il est donc ici:
Pour obtenir le fichier, vous devriez avoir un script dans votre html comme ceci:
Maintenant, sur le POST, votre fichier PHP doit ressembler à cela, mais veuillez prendre note que vous devez vérifier si le fichier existe sur votre POST:
Depuis le "Stockés dans:" la partie est tout simplement le chemin d'accès temporaire, vous devez déplacer votre "vrai" chemin de l'image à l'aide de move_uploaded_file().
Disons que le vrai/chemin d'accès par défaut pour vos images:
Il vous suffit de déplacer le fichier à l'aide de ceci:
Et de votre chemin d'accès complet de l'image serait
Il existe plusieurs façons de stocker le chemin d'accès à votre base de données:
1er: Est de stocker un peu le nom de fichier et concaténer le chemin de l'image en PHP à l'aide de
$_SERVER['DOCUMENT_ROOT']
et par défaut le chemin de l'image comme:2e: Est de stocker les chemin d'accès complet comme:
Ce que je recommande est cette approche dans laquelle vous allez saisir le partielle chemin (sans la racine dir), de sorte que plus tard, vous n'avez pas de problème sur le déploiement:
Et assurez-vous que les images sont réussi à télécharger pour que image par défaut dir/chemin.
Mise à JOUR
Je vous conseille également d'utiliser
mysqli_*
ouPDO
et l'utilisationprepare()
méthode /fonction pour éviter l'injection sql.$_POST
tableau, mais le$_FILES
tableau.Oui, je vous remercie pour cette out mais vous pouvez les stocker dans des variables et de les stocker dans la base de données.
Vous plaisantez? Voulez-vous vraiment pour insérer des données brutes à partir de $_POST en DB?
Attendez, avez-vous vérifié que mes mises à jour?
Ivan suis nouveau en php et je ne suis pas une blague sur cette question.oui je choisir cette méthode .Si je me trompe, alors s'il vous plaît me guider..
OriginalL'auteur Christian Mark
Si vous téléchargez une image, il est enregistré dans le chemin d'accès temporaire au premier abord. Vous devrez vous déplacer à votre répertoire final, sinon ça va être disparu après l'exécution du script. Ce qui fondamentalement est-ce qui se passe:
Si vous disposez d'un formulaire avec certains champs du formulaire (texte, case à cocher, zone de texte, peu importe), ET un champ de fichier (
<input type="file" name="uploaded_file" />
), tous les "normaux" champs seront accessibles avec la$_POST
tableau. Le ou les fichier(s) seront toutefois accessibles dans le$_FILES
un tableau (voir également la l'homme page sur l'upload de fichiers).Maintenant, quand vous recevez la demande de publication, les fichiers téléchargés sont stockés dans votre répertoire temporaire. Si vous ne faites rien, il va être supprimé à nouveau après l'exécution du script. Donc, vous auriez besoin d'appeler le move_uploaded_file() la fonction. Exemple:
Et de votre chemin d'accès complet de l'image serait
Ce chemin peut être enregistré dans votre base de données:
IMPORTANT: veuillez prendre note sur @brewal commentaire. Votre script est TRÈS dangereux comme ça.
désolé, je suis nouveau ici et je ne savais pas comment la poser correctement.eh bien, vous avez raison,maintenant j'ai clairement comprendre que je veux lui demander comment télécharger l'image et le chemin d'accès au magasin en Mysql... s'il vous plaît suggérer quelques points de vue concernant cette question.
OriginalL'auteur giorgio