Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Textarea破坏MySQL更新查询_Php_Jquery_Mysql_Textarea - Fatal编程技术网

Php Textarea破坏MySQL更新查询

Php Textarea破坏MySQL更新查询,php,jquery,mysql,textarea,Php,Jquery,Mysql,Textarea,如果更新查询中的文本多于一个句子,是否存在导致我的textarea中断更新查询的常见问题 当我只输入一个句子时,update查询运行良好,但是任何超过一个句子的查询都会中断查询 以下是表格代码: <form id="cp_files_admin_form" method="post" enctype="multipart/form-data"> <label>File Manager Login Text</label> <input id="log

如果更新查询中的文本多于一个句子,是否存在导致我的textarea中断更新查询的常见问题

当我只输入一个句子时,update查询运行良好,但是任何超过一个句子的查询都会中断查询

以下是表格代码:

<form id="cp_files_admin_form" method="post" enctype="multipart/form-data"> 

<label>File Manager Login Text</label>
<input id="login_text" type="text" name="login_text" value="File Manager Login">

<hr>    

<label>File Manager Login Logo</label>
<input id="login_logo" type="file" name="login_logo">

<hr>    

<label>Main Left Logo</label>
<input id="main_left_logo" type="file" name="main_left_logo">

<hr>    

<img class="form-img" src="" alt="">

<label>Main Center Logo</label> 
<input id="main_center_logo" type="file" name="main_center_logo">   

<hr>    

<label>File Manager Instructions Text</label>   
<textarea id="instructions_text" name="instructions_text" style="width:630px;height:150px;"></textarea>


<input id="submit" type="submit" value="Submit">

</form>
下面是update.php代码:

<?php

    header("Access-Control-Allow-Origin: *");

    require_once("debug/chromephp.php");

    $formData = $_GET;

    ChromePhp::log('$_GET Data: '.$formData['instructions_text']);

    require_once("config.php");

    $login_text = $formData['login_text'];
    //$login_logo = $formData['login_logo'];
    //$main_left_logo = $formData['main_left_logo'];
    //$main_center_logo = $formData['main_center_logo'];
    $instructions_text = $formData['instructions_text'];

    $sql="UPDATE cp_cms SET login_text='$login_text', instructions_text='$instructions_text' WHERE id = 1";

    $result = mysql_query($sql);

    if($result) {

        // Success
        $output = array('status' => true, 'massage' => 'Success!');
        echo json_encode($output);

    } else {

        // Failed
        $output = array('status' => false, 'massage' => 'Failed!');
        echo json_encode($output);

    }

?>

试试这个,它可以防止表单中的条目破坏您的sql查询。这也被称为SQL注入攻击

$sql="UPDATE cp_cms SET login_text='".
mysql_real_escape_string($login_text)."', instructions_text='".
mysql_real_escape_string($instructions_text)."' WHERE id = 1";
但是请看一下PDO,它是如此的安全和容易

编辑:我找到了一些PDO示例:

您真的应该升级到mysqli,因为mysql_uu函数已经被弃用了。您也没有清理您的数据-可能您有未替换的字符导致进程停止。您发布到哪种类型的专栏?@JayBlanchard升级到mysqli仅仅是将所有mysql引用更改为mysqli?哦,我明白了,我该如何清理我的数据?。我发布到mediumtext列类型。我已经添加了一个表格结构的屏幕截图。在进行转换之前,您需要仔细阅读此截图-非常感谢!这已经解决了这个问题,我学到了一些新的东西:)我已经读到了关于PDO的内容,并希望使用它。将此代码更改为使用PDO会是一项艰巨的任务吗?这不是一项艰巨的任务,肯定是您应该承担的任务。@JayBlanchard好的,我会找到一个教程。感谢您的帮助和建议:)
$sql="UPDATE cp_cms SET login_text='".
mysql_real_escape_string($login_text)."', instructions_text='".
mysql_real_escape_string($instructions_text)."' WHERE id = 1";