Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8096325
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 5, 20262026-06-05T21:25:10+00:00 2026-06-05T21:25:10+00:00

My app uploads an image and user/email/pass upon registration. iOS to php to mySQL.

  • 0

My app uploads an image and user/email/pass upon registration. iOS to php to mySQL. Email,user & pass & image name get saved to the db just fine. Its just the image that is not getting uploaded to the folder on the server. So its just that part of my code which is failing, but can anyone see where? I have this code on my server:

<?
include"master_inc.php";
//--------------------------------------------------------------------------RECEIVE LOCAL VARIABLES FROM FORM
$lastname = strip_tags(substr($_POST['lastname'],0,32));
$firstname = strip_tags(substr($_POST['firstname'],0,32));
$phone = strip_tags(substr($_POST['phone'],0,32));
//$image = $_POST['image'];
$photo=($_FILES['photo']['name']); 

$password_hint=$_REQUEST['password_hint'];
$noERROR=1;
$udidposted = 9;

//---------------------------------------------------------------------------CHECK IF USERNAME IS LONG ENOUGH
$username = strip_tags(substr($_POST['username'],0,32));
if(trim($username)!=='' && strlen(trim($username)) >= 4){
//---------------------------------------------------------------------------IF LONG ENOUGH THEN RUN A QUERY GETTING ALL DATA FROM THAT USER
$sql="SELECT * FROM users WHERE username='$username'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
//---------------------------------------------------------------------------IF $sql GOTTEN HAS ROW COUNT > 1 THEN USER ALREADY EXISTS----------------SET EXISTING USER 104 FLAG
if($count>0){
$username_already_in_use = 3141;
}
//---------------------------------------------------------------------------ELSE USERNAME IS TOO SHORT?!?!-------------------------------------------------------SET USER TOO SHORT 104 FLAG
}else{
$username_too_short = 3142;}

//---------------------------------------------------------------------------EMAIL FORMAT CHECK
$email_raw = $_REQUEST['email'];
if(eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@([a-z0-9-]{2,3})+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email_raw))
{ 
$email = $email_raw;
}else{
//---------------------------------------------------------------------------IF INVALID EMAIL THEN----------------------------------------------------------------------SET INVALID EMAIL 104 FLAG
$bad_email=3143;
} 

//email unique?
$sql="SELECT * FROM users WHERE email='$email'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count>0){
//---------------------------------------------------------------------------IF SQL FOR EMAIL RETURNS A ROW THEN------------------------------------------------SET EMAIL 104 FLAG
$email_already_in_use=3144;
}

//Secure Password Format Checks
$pw_clean = strip_tags(substr($_POST['password'],0,32));
if (preg_match("/^.*(?=.{4,})(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z]).*$/", $pw_clean, $matches)) {
}else{
//---------------------------------------------------------------------------IF PW NOT IN FORMAT THEN-----------------------------------------------------------------SET PW 104 FLAG
$pw_insecure = 3145;
}

//---------------------------------------------------------------------------IF ERROR FLAGS ARE SET THEN LOG HEADERS----------------------------
if($username_already_in_use==3141 OR $email_already_in_use==3144 OR $pw_insecure==3145 OR $bad_email==3143 OR $username_too_short==3142){
header(
"location:user_add_errors.php?pw_insecure=$pw_insecure&email_already_in_use=$email_already_in_use&username_already_in_use=$username_already_in_use&bad_email=$bad_email&username_too_short=$username_too_short"); 
die();
}
else {header("location:user_add_errors.php?noERROR=$noERROR");}

//End Error Checks________________________

//-------------------------------------------------------------------INSERT INTO SQL
//Encrypt Password
$encrypted_pw = md5($pw_clean);
$query = "INSERT INTO `users` (`username`,
`password`,
`lastname`,
`firstname`,
`email`,
`phone`,
`password_hint`,
`udid`,
`userCreated`,
`photo`)
VALUES
(
'$username',
'$encrypted_pw',
'$lastname',
'$firstname',
'$email',
'$phone',
'$password_hint',
'$udidposted',
now(),
'$photo')"; 
// save the info to the database
$results = mysql_query( $query );

//-----------------------CODE FOR SAVING IMAGE STARTS
//This is the directory where images will be saved 
 $target = "images/"; 
 $target = $target . basename( $_FILES['photo']['name']); 

 //This gets all the other information from the form 
 $photo=($_FILES['photo']['name']); 

 //Writes the photo to the server 
 if(move_uploaded_file($_FILES['photo']['tmp_name'], $target)) 
 { 

 //Tells you if its all ok 
 echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded, and your information has been added to the directory"; 
 } 
 else { 

 //Gives and error if its not 
 echo "Sorry, there was a problem uploading your file."; 
 } 
//-----------------------CODE FOR SAVING IMAGE ENDS

// print out the results
if( $results )
{
    if($username_too_short==3142){echo"ShortUser=".$username_too_short;}

    if($username_already_in_use==3141){echo"UserTaken=".$username_already_in_use;}

    if($email_already_in_use==3144){echo"EmailTaken=".$email_already_in_use;}

    if($pw_insecure==3145){echo"ShortPass=".$pw_insecure;}

    if($bad_email==3143){echo"BadEmail".$bad_email;}



//echo( "<font size='2' face='Verdana, Arial, Helvetica, sans-serif'>Your changes have been made sucessfully. <br><br><a href='login.php'>Back to login</a></font> " );
}
else
{
die( "Trouble saving information to the database: " . mysql_error() );
}
//--------------------------------------AGAIN?! THIS IS FOR THE FIRST ENTRY I THINK
$sql="SELECT * FROM users";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count==1){

$query = "UPDATE `users` SET `permissions`='5' WHERE `email`='$email'"; 
//---------------------------------------SAVE the info to the database
$results = mysql_query( $query );
//---------------------------------------JUST PRINT CODE
if( $results )
{ echo( "ADMINCREATED" );
}
else
{
die( "ERRORSAVINGADMIN" . mysql_error() );
}

}
?>

and my iOS code I’m pretty sure is working fine:

-(void)callASIHTTP{

    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://www.myserver.com/learn/login/user_save2.php"]];    
    // Upload an NSData instance
    NSData *imageData = UIImageJPEGRepresentation(self.pickedImage, 90);

    ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
    [request addPostValue:self.userName.text forKey:@"username"];
    [request addPostValue:self.userPass.text forKey:@"password"];
    [request addPostValue:self.userEmail.text forKey:@"email"];
    [request addData:imageData withFileName:self.userName.text andContentType:@"image/jpeg" forKey:@"photo"];

    //check if passedData is nil
    if (imageData == nil) {
        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"title:iDnil" message:@"msg:iDnil" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
        [alertView show];
        [alertView release];
    }

    //completion blocks
    [request setCompletionBlock:^{
        NSString *responseString = [request responseString];
        if (responseString == nil) {
            UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"title:rStrg" message:@"msg:rStrg" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
            [alertView show];
            [alertView release];
        }
    }];
    [request setFailedBlock:^{
        NSError *error = [request error];
        NSLog(@"Error: %@", error.localizedDescription);
    }];

    [request startAsynchronous];

}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-05T21:25:12+00:00Added an answer on June 5, 2026 at 9:25 pm

    I know your problem.. I have faced the smilar issue.. You have to give the path for the image.. The following code will get the image from the path.. if the image is in your directory index you have to get the path little different.. Try this and let me know..

            NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
            NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents folder
            NSString *dataPath = [documentsDirectory stringByAppendingPathComponent:@"photo.jpg"];
    [request setFile:[NSURL URLWithString:dataPath] forKey:@"photo"];
    
    //IF the photo is in directory index use the following code to get the url
    NSString *filename = [[NSBundle mainBundle] pathForResource:@"photo" ofType:@"png"];
    [request setFile:[NSURL URLWithString:filename] forKey:@"photo"];
    

    Ok here is the code you have to write for UIImagePicker

    - (void) imagePickerController:(UIImagePickerController *)thePicker didFinishPickingMediaWithInfo:(NSDictionary *)imageInfo 
    {
        imagePicker = nil;
    
        UIImage *image = [imageInfo objectForKey:@"UIImagePickerControllerEditedImage"];
        image = [image roundedCornerImage:23.5 borderSize:1];
    
    
    
    
        // Get the data for the image as a JPEG
        NSData* imageData = UIImageJPEGRepresentation(image, 0.5);
    
        // Give a name to the file
        NSString* imageName = @"photo.png";
    
        // Now, we have to find the documents directory so we can save it
        // Note that you might want to save it elsewhere, like the cache directory, or something similar.
        NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
        NSString* documentsDirectory = [paths objectAtIndex:0];
    
        // Now we get the full path to the file
        NSString* fullPathToFile = [documentsDirectory stringByAppendingPathComponent:imageName];
        [imageData writeToFile:fullPathToFile atomically:NO];
        myPicture = imageData;
        myPicturePath = fullPathToFile;    
    
        // Dismissing the image picker view
        [self dismissModalViewControllerAnimated: YES];
    }
    

    While uploading the image use this code.. You will have the myPicture path set from the image picker..

    Request setFile:myPicturePath forKey:@"photo"];
    

    The following code is to get the image from the document directory and send it..

    NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
                    NSString* documentsDirectory = [paths objectAtIndex:0];
    
                    // Now we get the full path to the file
                    NSString* fullPathToFile = [documentsDirectory stringByAppendingPathComponent:@"photo.png"];
                    [imageData writeToFile:fullPathToFile atomically:NO];
    
                    [Request setFile:fullPathToFile forKey:@"photo"];
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

An app uses paperclip to handle file uploads for user avatars. Paperclip currently deletes
I have a java servlet which accepts an image a user uploads to my
I'm using Carrierwave in my Rails app to handle image uploads. When I configure
My Rails app uses carrierwave to manage image uploads. I have a watermark version
I have an app in which the user can change the background image of
My app allows user to obtain picture/image from camera/photo gallery and then the app
My iPhone app uploads pictures to the user's Facebook account, and they are automatically
I have an app that uploads an image to Facebook. this is the part
I have a Rails app set up so that when a user uploads an
How can I dynamically insert images when user uploads an image file to SQL

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.