2017-01-04 170 views
-4

我有这些代码的时刻:PHP防止SQL注入/ XSS

> <?PHP 
>         
>         if(isset($_POST['update'])) { 
>         $ts=$_POST['ts']; 
>         $user=$_POST['user']; 
>         
>         mysql_query("UPDATE users SET block_newfriends='$ts' WHERE username='$user'") or die(mysql_error()); 
>         echo '<div class="rounded-container">'; 
>         echo '<div class="rounded-green rounded-done">'; 
>         echo '<b>text here</b><br>'; 
>         echo '</div>'; 
>         echo '</div>'; 
>         } 
>         ?> 

和:

<?php 
              $query = "SELECT * FROM users WHERE id = '".$_SESSION['user']['id']."'"; 
              $result = mysql_query($query); 
              $row = mysql_fetch_array($result); 
              $x1 = $row['block_newfriends']; 
              $ch1[$x1] = "checked"; 
              echo "text here 
              "; 
              ?> 

正如你所看到的,它包括PHP。但是我不确定它是否可以抵御SQL注入或XSS之类的任何攻击。 我需要把一个mysql_real_escape_string,如果是的话,究竟在哪里?

+0

好吧,所以没人知道吗? – IbraDigga

+0

'mysql_ *'函数在PHP7中无效。停止使用它们。然后,阅读SQL注入,以便了解**。是的,这段代码非常容易受到攻击。 – ceejayoz

+0

另请参阅http://stackoverflow.com/documentation/php/2784/php-mysqli/12843/escaping-strings – Machavity

回答

-2

不安全,您应该考虑使用准备好的声明