它为ImageId插入一个空值

时间:2012-04-06 14:22:20

标签: php javascript mysql

我有一个jsfiddle here。在Jsfiddle中你会看到一个textarea。在textarea中输入问题,然后单击“添加问题”按钮。它将在下面的表格行中添加问题以及在表格行中输入文件。

现在我的问题是,如果用户点击文件输入并选择一个文件,它会在文件输入中显示位置很好,但是当我提交表单时(我没有在jsfiddle中包含提交按钮) ,它将表单提交到另一个页面,其中假设从文件输入$ _POST问题和文件位置,它发布问题很好,但它不发布任何文件位置。它只是在插入值时显示空白值。如何将文件位置从文件输入插入INSERT VALUES而不是空值?

以下是我目前看到的INSERT VALUES示例:

INSERT INTO Question (QuestionContent, ImageId) VALUES ('What is my Name?',''), ('What is my Age','') 

正如您在上面看到的两个问题一样,它为'ImageId'插入一个空白值,即使它们的文件输入包含文件位置。

下面是我插入值的PHP代码:

$i = 0;
$c = count($_POST['questionText']);

$insertquestion = array();

for($i = 0;  $i < $c; $i++ ){

  $imagequery = "SELECT ImageId FROM Image WHERE (ImageFile = '". mysql_real_escape_string($_POST['fileImage'])."')";
    $imagers = mysql_query($imagequery);
    $imagerecord = mysql_fetch_array($imagers);
    $imageid = $imagerecord['ImageId']; 

    $insertquestion[] = "'".  
                    mysql_real_escape_string( $_POST['questionText'][$i] ) ."','".
                    mysql_real_escape_string( $imageid [$i] ) ."'";

}

 $questionsql = "INSERT INTO Question (SessionId, QuestionId, QuestionContent, QuestionMarks, OptionId, ImageId) 
    VALUES (" . implode('), (', $insertquestion) . ")";

echo($questionsql);

这是print_r($ FILES)的输出:

Array ( [fileImage] => Array ( [name] => Array ( [0] => car.jpg [1] => car3.jpg ) [type] => Array ( [0] => image/jpeg [1] => image/jpeg ) [tmp_name] => Array ( [0] => /var/tmp/phpAjaOOb [1] => /var/tmp/phpDjaOOb ) [error] => Array ( [0] => 0 [1] => 0 ) [size] => Array ( [0] => 21342 [1] => 20992 ) )

0 个答案:

没有答案