SDK de l'iphone : Téléchargez l'image de l'iphone à un Serveur php envoyer fichier vide ?(exemple de code lien à l'intérieur)
J'essaie d'envoyer une photo et de la position GPS au serveur via PHP
ici est la partie PHP:Copie à partir d'ici
Enregistrer le Fichier Téléchargé
Les exemples ci-dessus crée une copie temporaire des fichiers téléchargés dans le PHP du dossier temp sur le serveur.
Temporaire des fichiers copiés et disparaît lorsque le script se termine. Pour stocker le fichier téléchargé, nous avons besoin de le copier à un autre emplacement:
<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
}
else
{
echo "Invalid file";
}
?>
Le script vérifie si le fichier existe déjà, si il ne le fait pas, il copie le fichier vers le dossier spécifié.
Remarque: Cet exemple permet d'enregistrer le fichier dans un nouveau dossier appelé "télécharger"
maintenant de retour à iOS partie ,je ne peux envoyer la position GPS au serveur ,il est facile parce que tout simplement une chaîne de caractères.
et vous pouvez télécharger l'exemple de code ici
Mais l'image n'est pas,je fais un peu de recherche et j'ai trouvé ce discussion
J'ai directement mis le code dans ma envoyer GPS&bouton image
la meilleure chose est qu'il peut rétroaction j'envoie le fichier succès ou de l'échec de la
c'est le plus de message que j'ai reçu après que j'ai envoyer la photo pour serveur
1.Fichier non valide
2.Code de retour:
Télécharger:
Type:
Taille: 0 Ko
fichier Temp:
Stockés dans: upload/
Je suis certaine guide pour enregistrer l'image sur NSData
NSData *photoData= UIImageJPEGRepresentation(self.theimageView.image, 1.0);
et j'ai aussi vérifier la présence de données à l'intérieur ou pas
donc simplement ajouter ce code dans le Bouton de action
if (photoData == nil) {
NSLog(@"The photo is nothing !!!");
}
else {
NSLog(@"Photo inside !!!!");
Il fonctionne très bien.......
Mais Comment Faire Pour Télécharger Une Image Sur Le Serveur ???
peut-être que j'ai besoin de donner un nom de fichier puis le télécharger ???
mais comment...
Je n'ai jamais utiliser les fonctions de la caméra et de télécharger les données avant de les
Espère que quelqu'un peut comprendre ce problème
De Nombreux Grand Merci !!!
désolé je ne connais pas le PHP ou HTML de la partie , c'est mon autre ami écrit........désolé, ce n'aident pas à votre question,Mais je pense que je viens d'envoyer un fichier vide de serveur PHP.Mais après je prend une photo, je reçois un message "ERREUR: FigCreateCGImageFromJPEG retourné -12905. D'entrée (null) était 630283 octets."
donc...Ça doit être quelque chose dans mon NSData
stackoverflow.com/questions/3642975/...
Je ne suis pas sûr de ce lien de l'aide ou pas ...
OriginalL'auteur Webber Lai | 2010-10-21
Vous devez vous connecter pour publier un commentaire.
utiliser HTTP multipart POST ou ASIHTTPRequest
Je pense que j'ai besoin d'inclure inclus ASIFormDataRequest sous-classe???
allseeing-i.com/ASIHTTPRequest/How-to-use
OriginalL'auteur dhii
C'est bien d'ajouter cette
Mais Quand j'ai essayer de le mettre dans mon bouton d'action
Il a eu beaucoup de message d'erreur ,je pense, est délégué problème
première complier dit "demande non déclaré" et "ASIFormDataRequest non déclarées"
et "requestString non déclarées"
J'essaie de donner de la demande et requestString déclaré
Donc j'utilise
ASIFormDataRequest *request;
etNSString *requestString;
Clairement une erreur à propos de "equestString non déclarées"
Je ne sais pas comment déclaré ASIFormDataRequest donc encore une erreur...
Ai-je le droit de mettre cela dans IBAction ???
Je regarde quelques exemple ici
Merci encore~vous êtes un gars vraiment sympa !
Plus Edit :
OK, Ici, c'est plus qu'une étape sur la façon d'importation nécessaires .h .m et le cadre
télécharger ici
et l'importation de cet en-tête :
iPhone les projets doivent également inclure:
que l'importation Cadre:
CFNetwork
SystemConfiguration.cadre
MobileCoreServices.cadre
CoreGraphics.cadre
libz.1.2.3.dylib
OriginalL'auteur Webber Lai
OK,Voici un petit bug entre iPhone3 & iPhone4/touch4
@ dhil la Réponse est presque droit , Vous avez juste besoin de donner une touche de droite (dépend du Serveur)
Ok...maintenant, si vous utilisez iPhone3 , et vous ne donnez pas
requestString
allocIl fonctionne très bien ~
Mais si vous exécutez sur iPhone4/touch4 ,Il sera la cause de EXC_BAD_ACCESS
même les deux appareil iOS 4.1
Alors...Espérons que cette réponse vous aidera à gagner du temps au sujet de télécharger l'image sur le serveur.
OriginalL'auteur Webber Lai