PHP ifelse通过上传使数据库的post值为null
PHP ifelse makes the post values to database null with upload
我尝试制作一个上传表单并将一些值发布到数据库中。我写了这段代码,但当我回显它时,它会给出一个结果,当我检查数据库时,我得到的值为null——没有值。。。文件已上载并重命名,但没有向数据库发送任何值。
表名:公司
列:
coid
公司名称
company_sign_1
company_sign_name_1
company_sign_name_p_1
company_sign_2
company_sign_name_2
company_sign_name_p_2
company_sign_3
company_sign_name_3
company_sign_name_p_3
company_logo_1
company_logo_2
company_logo_3
我的代码是:
<script type="text/javascript">
function showfield(name){
if(name=='company_sing_1'){
document.getElementById('div1').innerHTML='Manager Name 1:<BR><input type="text" name="company_sign_name_1" /><BR>Manager Position 1:<BR><input type="text" name="company_sign_name_p_1" />';
}else if(name=='company_sing_2'){
document.getElementById('div1').innerHTML='Manager Name 2:<BR><input type="text" name="company_sign_name_2" /><BR>Manager Position 2:<BR><input type="text" name="company_sign_name_p_2" />';
}else if(name=='company_sing_3'){
document.getElementById('div1').innerHTML='Manager Name 3:<BR><input type="text" name="company_sign_name_3" /><BR>Manager Position 3:<BR><input type="text" name="company_sign_name_p_3" />';
}
else document.getElementById('div1').innerHTML='';
}
</script>
<?php
$newfilenamepath = "$filepath_d" . "$filename_d";
$company_name= ($_POST['company_name'])?$_POST['company_name']:'';
$upload_type= ($_POST['upload_type'])?$_POST['upload_type']:'';
if ($upload_type = "company_sing_1") {
$company_sign_name_1= ($_POST['company_sign_name_1'])?$_POST['company_sign_name_1']:'';
$company_sign_name_p_1= ($_POST['company_sign_name_p_1'])?$_POST['company_sign_name_p_1']:'';
mysql_query("update companies set $upload_type='".$newfilenamepath."', company_sign_name_1='".$company_sign_name_1."', company_sign_name_p_1='".$company_sign_name_p_1."' where CO_ID='".$company_name."'");
} elseif ($upload_type = "company_sing_2") {
$company_sign_name_2= ($_POST['manager2'])?$_POST['manager2']:'';
$company_sign_name_p_2= ($_POST['manager2_pos'])?$_POST['manager2_pos']:'';
mysql_query("update companies set $upload_type='".$newfilenamepath."', company_sign_name_2='".$company_sign_name_2."', company_sign_name_p_2='".$company_sign_name_p_2."' where CO_ID='".$company_name."'");
} elseif ($upload_type = "company_sing_3") {
$company_sign_name_3= ($_POST['manager3'])?$_POST['manager3']:'';
$company_sign_name_p_3= ($_POST['manager3_pos'])?$_POST['manager3_pos']:'';
mysql_query("update companies set $upload_type='".$newfilenamepath."', company_sign_name_3='".$company_sign_name_3."', company_sign_name_p_3='".$company_sign_name_p_3."' where CO_ID='".$company_name."'");
} else {
mysql_query("update companies set $upload_type='".$newfilenamepath."' where CO_ID='".$company_name."'");
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data" name="form1" id="form1">
<select name="company_name">
<option selected="selected" disabled="disabled">Please Select Name Of Company</option>
<?php
$company_lists = mysql_query("SELECT * FROM companies ORDER BY CO_ID DESC");
while ($row_com_list = mysql_fetch_array($company_lists)) {
echo "<option value='" . $row_com_list['CO_ID'] . "'>" . $row_com_list['company_name'] . "</option>";
}
echo "</select>";
?>
</select><BR /><BR />
<input name="file" type="file" size="20" /><BR /><BR />
<select name="upload_type" onchange="showfield(this.options[this.selectedIndex].value)">
<option selected="selected" disabled="disabled">Please Select Type Of Upload</option>
<option value="company_logo">Add A Logo</option>
<option value="company_logo_2">Add Second Logo</option>
<option value="company_logo_2">Add Third Logo</option>
<option value="company_sing_1">Add Sign For Manager 1</option>
<option value="company_sing_2">Add Sign For Manager 2</option>
<option value="company_sing_3">Add Sign For Manager 3</option>
</select><BR /><BR />
<div id="div1"></div></BR></BR>
<input name="submit" type="submit" value="Upload" />
</form>
问题出在哪里?我们能做些什么?
编辑:
当我填写表格并回显它时,如果我得到这个,就在第一个中断:
echo $upload_type;
echo "//////";
echo $company_sign_name_1;
echo "//////";
echo $company_sign_name_p_1;
echo "//////";
echo $newfilenamepath;
echo "//////";
echo $company_name;
break;
company_sing_1//////Abdulrahman Nahas//////////总经理///////上传/9-240920-0494829001411172658.png//////2
这意味着它采取了形式,但没有将值发送到mysql。我在第二个测试中测试了echo,否则它什么也没给我。
您的$upload_type
是company_sing_1
等,而不是company_sign_1
等。您的数据库中没有名为company_sing_1
等的字段。修复命名,您就会解决问题。
相关文章:
- 通过 ajax POST 向 PHP 发送两个值以查询 SQL 数据库
- Angular js,在选择元素上,我想 POST 数据以将其保存在数据库中,然后我想使用 PUT 更新它而无需重新加载
- 我无法以某种方式在数据库中POST文件
- 我想单击一个
- 并获取 id 以通过 POST 将其插入数据库,可以吗?
- ajax post 为空(数据库中的空字符串)
- 当 Javascript 中的 POST ID 元素插入 PDO 时,数据库中没有结果
- 从 Ajax POST 在数据库中将复选框值保存为 0 或 1
- 使用ajax将会话变量POST到关系数据库
- PHP ifelse通过上传使数据库的post值为null
- 从视图中调用MVC控制器中的HTTP POST方法'数据库保存
- 铁:路由器+流星-不能同时添加POST数据到数据库和渲染路由
- Post数据通过php到我的数据库在AngularjS
- Post datetime类型到数据库与JavaScript
- 使用ajax post方法,从数据库结果创建JSON对象,并将其发送回jquery UI Dialog
- Post/Insert javascript变量到mySQL数据库表-可能使用ajax &/或jquery -如何
- 如何通过PHP POST骨干模型数据到数据库
- Ajax post请求似乎可以工作,只是数据没有保存在数据库中
- 为什么Laravel上的AJAX GET/POST会“;内部服务器错误”;当我尝试将数据用于数据库请求时
- 我怎样才能得到一个Javascript选择选项值提交到数据库的Post
- 主干应用POST请求数据库