在文件中生成的PHP post变量
我正在上传一个评论和主题,它是从HTML表单中提供给php文件的。 但我想存储一个文件链接的名称;文件名为$ran2,在php文件中生成。 评论:在文件中生成的PHP post变量,php,mysql,post,Php,Mysql,Post,我正在上传一个评论和主题,它是从HTML表单中提供给php文件的。 但我想存储一个文件链接的名称;文件名为$ran2,在php文件中生成。 评论: <tr> <td><input type="submit" name="submit" value="upload"></td> </tr> </table> <?php $ran2 = rand () ; $insert
<tr>
<td><input type="submit" name="submit" value="upload"></td>
</tr>
</table>
<?php
$ran2 = rand () ;
$insert = "INSERT INTO images (image, comment, subject)
VALUES ('".$_POST[$ran2]"', '".$_POST['text']."','".$_POST['subject']."')";
$add_member = mysql_query($insert);
?>
问题是缺少
,并且$ran2不是$\u POST数组的成员,因此不能使用$\u POST[$ran2]调用它:
<tr>
<td><input type="submit" name="submit" value="upload"></td>
</tr>
</table>
<?php
$ran2 = rand () ;
$insert = "INSERT INTO images (image, comment, subject)
VALUES ('".$_POST[$ran2]"', '".$_POST['text']."','".$_POST['subject']."')";
$add_member = mysql_query($insert);
?>
$insert = "INSERT INTO images (image, comment, subject)
VALUES ('".$_POST[$ran2]."', '".$_POST['text']."','".$_POST['subject']."')";
missing----^
因此,如果您只需将变量更改为$ran2,并在其中获取缺少的周期,它就会起作用:
<tr>
<td><input type="submit" name="submit" value="upload"></td>
</tr>
</table>
<?php
$ran2 = rand () ;
$insert = "INSERT INTO images (image, comment, subject)
VALUES ('".$_POST[$ran2]"', '".$_POST['text']."','".$_POST['subject']."')";
$add_member = mysql_query($insert);
?>
$insert = "INSERT INTO images (image, comment, subject)
VALUES ('".$ran2."', '".mysql_real_escape_string($_POST['text'])."','".mysql_real_escape_string($_POST['subject'])."')";
为了支持他们在评论中所说的话,你真的需要切换到在mysqli或PDO中使用准备好的语句。你应该阅读sql注入。看在上帝的份上,停止使用mysql_*系列函数,现在就切换到mysqli或PDO!用少量SQL注入和少量痛苦将文件保存到DB。您当前的代码对用户开放。使用,或者不使用$\u POST[$ran2],而只使用$ran2
<tr>
<td><input type="submit" name="submit" value="upload"></td>
</tr>
</table>
<?php
$ran2 = rand () ;
$insert = "INSERT INTO images (image, comment, subject)
VALUES ('".$_POST[$ran2]"', '".$_POST['text']."','".$_POST['subject']."')";
$add_member = mysql_query($insert);
?>