0

我在同时发布文本字段和上传图片时遇到问题,目前我可以上传图片或发布文本字段。如何使用一个按钮同时发布所有内容?

$photo_form  = '<form id="photo_form" enctype="multipart/form-data" method="post" action="php_parsers/status_system.php">';
$photo_form .=   '<select name="gallery" required>';
$photo_form .=     '<option value="Cover">Cover</option>';
$photo_form .=   '</select>';
$photo_form .=   ' &nbsp; &nbsp; &nbsp; <b>Browse:</b> ';
$photo_form .=   '<input type="file" name="photo" accept="image/*" required>';
$photo_form .=   '<p><input type="submit" value="Upload"></p>';
$photo_form .= '</form>';

$status_ui = "";
$status_ui = '<div><textarea id="statustext" onkeyup="statusMax(this,500)" placeholder="Description field"></textarea>';
$status_ui .= $photo_form;
$status_ui .= '<textarea id="statustext2" onkeyup="statusMax(this,200)" placeholder="Description field 2."></textarea></div>';
$status_ui .= '<button id="statusBtn" onclick="postToStatus(\'status_post\',\'a\',\''.$u.'\',\'statustext\',\'statustext2\')">Post</button>';

致马克西姆斯2012

$status_ui  = "";
$status_ui .= '<div><textarea id="statustext" name="statustext" onkeyup="statusMax(this,500)"   placeholder="Description field"></textarea>';
$status_ui .= '<textarea id="statustext2" name="statustext2" onkeyup="statusMax(this,200)" placeholder="Description field 2."></textarea></div>';

$photo_form  = '<form id="photo_form" enctype="multipart/form-data" method="post"     action="php_parsers/status_system.php">';
$photo_form .=   '<select name="gallery" required>';
$photo_form .=     '<option value="Cover">Cover</option>';
$photo_form .=   '</select>';
$photo_form .=   ' &nbsp; &nbsp; &nbsp; <b>Browse:</b> ';
$photo_form .=   '<input type="file" name="photo" accept="image/*" required>';
$photo_form .=   $status_ui ;
$photo_form .=   '<p><input type="submit" value="Upload"></p>';
$photo_form .= '</form>';

echo $photo_form ;

我仍然只能使用此代码上传图片,但是当我使用

$photo_form .= '<p><button id="statusBtn" onclick="postToStatus(\'status_post\',\'a\',\''.$u.'\',\'statustext\',\'statustext2\')">Post</button></p>';

代替

$photo_form .= '<p><input type="submit" value="Upload"></p>';

一切都已处理,但文本部分插入一行,图像插入另一行。

这是我的 postToStatus 函数:

function postToStatus(action,type,user,ta,te){
var data = _(ta).value;
var data2= _(te).value;
if(data == "" && data2 == ""){
alert("Please fill in all fields");
return false;
}

我对我的图像解析脚本进行了一些调整,因此文本和图像放置在同一行中,因为图像是在文本之后上传的,而不是将文件名插入新行脚本现在更新该用户在其个人资料中创建的最后一行。现在,如果任何字段为空白,我只需要阻止发布表单。

$sql = "UPDATE status SET filename = '$db_file_name' WHERE author = '$log_username' && account_name = '$log_username' ORDER BY id DESC LIMIT 1";
4

2 回答 2

0

这里有两个选项。首先是在同一个表格中包含您想要的所有信息。这意味着该表单中的任何字段都将被“提交”。

这看起来像(只是结合$photo_form$status_ui

$photo_form  = '<form id="photo_form" enctype="multipart/form-data" method="post"     action="php_parsers/status_system.php">';
$photo_form .=   '<select name="gallery" required>';
$photo_form .=     '<option value="Cover">Cover</option>';
$photo_form .=   '</select>';
$photo_form .=   ' &nbsp; &nbsp; &nbsp; <b>Browse:</b> ';
$photo_form .=   '<input type="file" name="photo" accept="image/*" required>';
$photo_form .=   '<textarea id="statustext" onkeyup="statusMax(this,500)"   placeholder="Description field"></textarea>';
$photo_form .=   '<textarea id="statustext2" onkeyup="statusMax(this,200)" placeholder="Description field 2."></textarea>';
$photo_form .=   '<p><input type="submit" value="Upload"></p>';
$photo_form .= '</form>';

但是,此选项将绕过postToStatus()之前使用 statusBtn 发生的情况。

您拥有的另一个选项(仍然允许调用postToStatus())是通过您的 javascript 来完成。您可以在postToStatus函数进行 AJAX/POST/GET 调用之前使用 javascript 在其他表单中获取图像。

于 2013-07-23T19:09:35.307 回答
0

您的文本字段和图片字段不是同一表单的一部分。看看这是否有效:

$status_ui  = "";
$status_ui .= '<div><textarea id="statustext" name="statustext" onkeyup="statusMax(this,500)"   placeholder="Description field"></textarea>';
$status_ui .= '<textarea id="statustext2" name="statustext2" onkeyup="statusMax(this,200)" placeholder="Description field 2."></textarea></div>';

$photo_form  = '<form id="photo_form" enctype="multipart/form-data" method="post"     action="php_parsers/status_system.php">';
$photo_form .=   '<select name="gallery" required>';
$photo_form .=     '<option value="Cover">Cover</option>';
$photo_form .=   '</select>';
$photo_form .=   ' &nbsp; &nbsp; &nbsp; <b>Browse:</b> ';
$photo_form .=   '<input type="file" name="photo" accept="image/*" required>';
$photo_form .=   $status_ui ;
$photo_form .=   '<p><input type="submit" value="Upload"></p>';
$photo_form .= '</form>';

echo $photo_form ;
于 2013-07-23T18:54:24.637 回答