App Inventor图像和文本表单到SQL无法正常工作

时间:2014-10-14 10:08:28

标签: php mysql app-inventor

我们正在使用App发明者2创建一个APP,它通过PHP脚本将包含文本字段和2个图像的表单提交到mySQL数据库。我们制作了一个HTML表单来测试它运行正常,但不幸的是我们的应用程序发明者块在提交表单时似乎没有用。这是我的街区图片的链接;

http://i.stack.imgur.com/Z7QRH.png

这是我的PHP脚本;

<?php
                    // database connection
                    mysql_connect(localhost, username, password) OR DIE (mysql_error());

                    // select the db
                    mysql_select_db (outofhours) OR DIE ("Unable to select db".mysql_error());

$maxsize = 10000000; //set to approx 10 MB

$sitename = $_POST['sitename'];
$siteaddress = $_POST['siteaddress'];
$sitepostcode = $_POST['sitepostcode'];
$eqmake = $_POST['eqmake'];
$eqmodel = $_POST['eqmodel'];
$eqdesc = $_POST['eqdesc'];
$eqserial = $_POST['eqserial'];
$eqassetno = $_POST['eqassetno'];
$eqconttype = $_POST['eqconttype'];
$brewery = $_POST['brewery'];
$date = $_POST['date'];
$onsitetime = $_POST['onsitetime'];
$offsitetime = $_POST['offsitetime'];
$custprintname = $_POST['custprintname'];
$custposition = $_POST['custposition'];
$engname = $_POST['engname'];

// check if a file was submitted
if(!isset($_FILES['engsig1']))
{
    echo '<p>Please select a file</p>';
}
else
{
    try {
    $msg= upload();  //this will upload your image
    echo $msg;  //Message showing success or failure.
    }
    catch(Exception $e) {
    echo $e->getMessage();
    echo 'Sorry, could not upload file';
    }
}






    include "file_constants.php";
    $maxsize = 10000000; //set to approx 10 MB

    //check associated error code
        if($_FILES['engsig1']['error']==UPLOAD_ERR_OK) {

        //check whether file is uploaded with HTTP POST
        if(is_uploaded_file($_FILES['engsig1']['tmp_name'])) {    

            //checks size of uploaded image on server side
            if( $_FILES['engsig1']['size'] < $maxsize) {  

               //checks whether uploaded file is of image type
                 $finfo = finfo_open(FILEINFO_MIME_TYPE);
                if(strpos(finfo_file($finfo, $_FILES['engsig1']['tmp_name']),"image")===0) {    
                    // prepare the image for insertion
                    $imgData1 =addslashes (file_get_contents($_FILES['engsig1']['tmp_name']));
                    $imgData2 =addslashes (file_get_contents($_FILES['custsig1']['tmp_name']));

                    // put the image in the db...
                    // database connection
                    mysql_connect($host, $user, $pass) OR DIE (mysql_error());

                    // select the db
                    mysql_select_db ($db) OR DIE ("Unable to select db".mysql_error());

                    // our sql query
                    $sql = "INSERT INTO oohours (sitename, siteaddress, sitepostcode, eqmake, eqmodel, eqdesc, eqserial, eqassetno, eqconttype, brewery, date, onsitetime, offsitetime, custprintname, custsig1, custposition, engname, engsig1)
                    VALUES
                    ('$sitename', '$siteaddress', '$sitepostcode', '$eqmake', '$eqmodel', '$eqdesc', '$eqserial', '$eqassetno', '$eqconttype', '$brewery', '$date', '$onsitetime', '$offsitetime', '$custprintname', '{$imgData1}', '$custposition', '$engname', '{$imgData2}')";

                    // insert the image
                    mysql_query($sql) or die("Error in Query: " . mysql_error());
                    $msg='<p>Image successfully saved in database with id ='. mysql_insert_id().' </p>';
                }
                else
                    $msg="<p>Uploaded file is not an image.</p>";
            }
             else {
                // if the file is not less than the maximum allowed, print an error
                $msg='<div>File exceeds the Maximum File limit</div>
                <div>Maximum File limit is '.$maxsize.' bytes</div>
                <div>File '.$_FILES['engsig1']['name'].' is '.$_FILES['engsig1']['size'].
                ' bytes</div><hr />';
                }
        }
        else
            $msg="File not uploaded successfully.";

    }
    else {
        $msg= file_upload_error_message($_FILES['engsig1']['error']);
    }
    return $msg;
}

// Function to return error message based on error code

function file_upload_error_message($error_code) {
    switch ($error_code) {
        case UPLOAD_ERR_INI_SIZE:
            return 'The uploaded file exceeds the upload_max_filesize directive in php.ini';
        case UPLOAD_ERR_FORM_SIZE:
            return 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form';
        case UPLOAD_ERR_PARTIAL:
            return 'The uploaded file was only partially uploaded';
        case UPLOAD_ERR_NO_FILE:
            return 'No file was uploaded';
        case UPLOAD_ERR_NO_TMP_DIR:
            return 'Missing a temporary folder';
        case UPLOAD_ERR_CANT_WRITE:
            return 'Failed to write file to disk';
        case UPLOAD_ERR_EXTENSION:
            return 'File upload stopped by extension';
        default:
            return 'Unknown upload error';
    }
}
?>

非常感谢您在解决此问题方面的帮助。 感谢

0 个答案:

没有答案