即使禁用了文件上传/字段元素,PHP脚本也会插入

马克图

嗨,我似乎无法找出问题所在。我有一个带有元素的表格。你能检查一下脚本吗?我只是知道它缺少某些东西,但是像我这样的菜鸟却不知道。基本上选择智能货币单选按钮时,将BPI被禁用,并且反之亦然。它应该将数据输入插入数据库。如果所选无线电btn是BPI,则工作正常,但如果选择了Smart money,并且用户输入了数据并且BPI /文件上载被禁用,则它不会在数据库中插入任何内容。您能告诉我该怎么办,我认为这些脚本有点不对劲,因为查询位于文件上传脚本的下方。我认为当没有要上传的内容/禁用该选项时,它不会插入任何内容。我猜文件上传脚本会干扰。

PHP:

if(isset($_FILES['filename'])){
    $errors = array();
    $file_name = $_FILES['filename']['name'];
    $file_size =$_FILES['filename']['size'];
    $file_tmp =$_FILES['filename']['tmp_name'];
    $file_type=$_FILES['filename']['type'];   
    $file_ext=strtolower(end(explode('.',$_FILES['filename']['name'])));


    $expensions= array("jpeg","jpg","png");         
    if(in_array($file_ext,$expensions)=== false){
        $errors[]="extension not allowed, please choose a JPEG or PNG file.";
    }
    if($file_size > 2097152){
        $errors[]='File size must be excately 2 MB';
    }          

    // if no error...     
    if (empty($errors)==true) {

        // upload the file...
        move_uploaded_file($file_tmp,"uploads/".$file_name);

        $servername = "localhost";
        $username = "root";
        $password = " ";
        $dbname = "admin";

        // create new record in the database
        include ("dbinfo.php");

        mysql_query("INSERT INTO payment_form (Tracking, date, mode, ContactNo, totalsent, datesent, filename) VALUES ('$transactionNo', NOW(), '$rad', '$contactNo', '$totalSent', '$dateSent', '$file_name')") ;

        header('Location: paymentform_success.php');
    }else{
        print_r($errors);
    }
}

形式:

<form name="form" method="POST" enctype="multipart/form-data">
<table width="416" height="245" border="1" align="center">
<tr>
<td colspan="2">Transaction No: <input type="text" name="transaction_no" id="transaction_no" /> </td>
</tr>
<tr>
<td colspan="2" align="center">Please select the mode of payment</td>
</tr>
<tr>
<td width="183" align="center"><input name="rad" type="radio" onclick="enableField(this)" value="Smart Money"> 
Smart Money</td>
<td width="201" align="center"><input name="rad" type="radio" onclick="enableField(this)" value="BPI"> BPI Bank Deposit</td>
</tr>
<tr>
<td align="center"><input name="contactno" type="text" disabled="disabled" id="contactno"></td>
<td align="center"><input name="filename" type="file" id="filename" disabled="disabled"/></td>
</tr>
<tr>
<td>Total amount sent:</td>
<td>&nbsp;<input type="text" name="totalsent" id="totalsent" /></td>
</tr>
<tr>
<td>Date sent:</td>
<td>&nbsp;<input type="text" name="datesent" id="datesent" /></td>
</tr>
<tr>
<td colspan="2" align="center"><input name="submit" type="submit" id="submit" value="Submit" /></td>
</tr>
</table>
<input type="hidden" name="MM_insert" value="form" />

</form>

JS禁用/启用

<script type="text/javascript">
function enableField(obj){
    var form=obj.form;
    var txtNames=['contactno','filename'], f;
    var rads=document.getElementsByName(obj.name), r, i=0;
    while(r=rads[i++]){
        f=form[txtNames[i-1]];
        if(r.checked){
            f.removeAttribute('disabled');
            f.focus();
        }
        else{
            f.value='';
            f.setAttribute('disabled','disabled')
        }
    }
}
</script>
巴尔玛

INSERT外面的if(isset($_FILES['filename']))块。

if (isset($_POST['submit'])) {
    $errors = array();
    if (isset($_FILES['filename'])) {
        $file_name = $_FILES['filename']['name'];
        $file_size =$_FILES['filename']['size'];
        $file_tmp =$_FILES['filename']['tmp_name'];
        $file_type=$_FILES['filename']['type'];   
        $file_ext=strtolower(end(explode('.',$_FILES['filename']['name'])));

        $expensions= array("jpeg","jpg","png");         
        if(in_array($file_ext,$expensions)=== false){
            $errors[]="extension not allowed, please choose a JPEG or PNG file.";
        }
        if($file_size > 2097152){
            $errors[]='File size must be excately 2 MB';
        }          

        // if no error...     
        if (empty($errors)==true) {

            // upload the file...
            move_uploaded_file($file_tmp,"uploads/".$file_name);

        }else{
            print_r($errors);
        }
    } else {
        $file_name = '';
    }

    if (empty($errors)) {
        $servername = "localhost";
        $username = "root";
        $password = " ";
        $dbname = "admin";

        // create new record in the database
        include ("dbinfo.php");

        $transactionNo = $_POST['transaction_no'];
        $rad = $_POST['rad'];
        $contactNo = $_POST['contactno'];
        $totalSent = $_POST['totalsent'];
        $dateSent = $_POST['datesent'];

        mysql_query("INSERT INTO payment_form (Tracking, date, mode, ContactNo, totalsent, datesent, filename) VALUES ('$transactionNo', NOW(), '$rad', '$contactNo', '$totalSent', '$dateSent', '$file_name')") ;

        header('Location: paymentform_success.php');
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

即使禁用了 Grub 菜单也会突然显示

来自分类Dev

php文件上传总是上传文件,即使出现错误

来自分类Dev

即使禁用了命令,WPF InputGesture也会从TextInput处理程序中隐藏字符

来自分类Dev

即使禁用了键盘快捷键,Eclipse Editor也会消耗AltGr + A

来自分类Dev

即使禁用了排序,第一列也会显示排序箭头

来自分类Dev

Bug in a Azure ?,即使禁用了多因素,也会询问多因素

来自分类Dev

即使禁用了键盘快捷键,Eclipse Editor也会消耗AltGr + A

来自分类Dev

即使禁用了共享历史记录,zsh也会保持共享历史记录

来自分类Dev

为什么即使禁用了文件,用户仍然可以检出相同的文件?

来自分类Dev

form_for字段会禁用所有javascript元素

来自分类Dev

为什么即使未选中也禁用了编辑器中的脚本,脚本仍可正常工作并使对象可交互?

来自分类Dev

即使文件很小,php的内存也会在文件上传时耗尽

来自分类Dev

PHP脚本即使没有执行POST也会执行IF语句

来自分类Dev

PHP基本上传文件脚本

来自分类Dev

如何验证PHP中的上传文件字段

来自分类Dev

使用Python脚本在Django中保存文件以上传字段

来自分类Dev

PHP简单的上传脚本缺少输入字段。为什么?

来自分类Dev

无法加载文件,因为此系统上禁用了脚本执行

来自分类Dev

使用PHP脚本上传文件时出现无效文件错误

来自分类Dev

在.Jade文件中插入Polymer元素和脚本

来自分类Dev

即使在PHP.INI文件中启用了卷曲后,卷曲也不会执行

来自分类Dev

首次上传文件后,PHP脚本不起作用

来自分类Dev

使用AngularJS和php服务器脚本上传文件

来自分类Dev

使用PHP脚本将文件上传到虚拟主机

来自分类Dev

使用php将文件上传到与脚本相同的目录

来自分类Dev

无法通过Synology Server上的PHP脚本上传文件

来自分类Dev

如何使用XAMPP将Ajax文件上传到php脚本

来自分类Dev

输入类型文件-Ajax上传和php脚本

来自分类Dev

将文件上传到 s3 php 脚本

Related 相关文章

  1. 1

    即使禁用了 Grub 菜单也会突然显示

  2. 2

    php文件上传总是上传文件,即使出现错误

  3. 3

    即使禁用了命令,WPF InputGesture也会从TextInput处理程序中隐藏字符

  4. 4

    即使禁用了键盘快捷键,Eclipse Editor也会消耗AltGr + A

  5. 5

    即使禁用了排序,第一列也会显示排序箭头

  6. 6

    Bug in a Azure ?,即使禁用了多因素,也会询问多因素

  7. 7

    即使禁用了键盘快捷键,Eclipse Editor也会消耗AltGr + A

  8. 8

    即使禁用了共享历史记录,zsh也会保持共享历史记录

  9. 9

    为什么即使禁用了文件,用户仍然可以检出相同的文件?

  10. 10

    form_for字段会禁用所有javascript元素

  11. 11

    为什么即使未选中也禁用了编辑器中的脚本,脚本仍可正常工作并使对象可交互?

  12. 12

    即使文件很小,php的内存也会在文件上传时耗尽

  13. 13

    PHP脚本即使没有执行POST也会执行IF语句

  14. 14

    PHP基本上传文件脚本

  15. 15

    如何验证PHP中的上传文件字段

  16. 16

    使用Python脚本在Django中保存文件以上传字段

  17. 17

    PHP简单的上传脚本缺少输入字段。为什么?

  18. 18

    无法加载文件,因为此系统上禁用了脚本执行

  19. 19

    使用PHP脚本上传文件时出现无效文件错误

  20. 20

    在.Jade文件中插入Polymer元素和脚本

  21. 21

    即使在PHP.INI文件中启用了卷曲后,卷曲也不会执行

  22. 22

    首次上传文件后,PHP脚本不起作用

  23. 23

    使用AngularJS和php服务器脚本上传文件

  24. 24

    使用PHP脚本将文件上传到虚拟主机

  25. 25

    使用php将文件上传到与脚本相同的目录

  26. 26

    无法通过Synology Server上的PHP脚本上传文件

  27. 27

    如何使用XAMPP将Ajax文件上传到php脚本

  28. 28

    输入类型文件-Ajax上传和php脚本

  29. 29

    将文件上传到 s3 php 脚本

热门标签

归档