php笔记

今天开始学习php了 就做了一点点内容 先整理整理 

<?php
error_reporting(E_ALL); 
$msg = isset($_POST["m"]) ? $_POST["m"] : '';
$date = isset($_POST["d"]) ? $_POST["d"] : '';
$username = isset($_POST["u"]) ? $_POST["u"] : '';
if($msg){
$conn=mysql_connect("localhost","root","admin");
mysql_select_db("eleven-s", $conn);
mysql_query("set names 'utf8'");
if(!$conn){die('error: ' . mysql_error());}
$sql="SELECT id FROM user where username='".addslashes($username)."' ";
$result=mysql_query($sql);
$userInfo = mysql_fetch_assoc($result);
$userId = $userInfo['id'];
// var_dump($sql);
$sql="INSERT INTO msg (user_id,msg_content,msg_date) VALUES ($userId,'$msg','$date')";
$result=mysql_query($sql);
var_dump($result);
mysql_close($conn);
}
?>

首先呢 是单引号'和双引号"的应用
1,php会解析双引号的内容
  例如$a = "11";
        $b =  "aaaaaa$a";
        $c = 'aaaaaa$a';
        打印出来的 $b 是 aaaaaa11 ; 而 $c 是 aaaaa$a
php传递参数不加引号的时候是表示整型  传递的参数是字符串必须加 单引号 


2,申明一个变量是要用isset(); 原因有很多  这样安全多了 麻烦少了

3,是防注入 用到了addslashes();

4,判断字符串是不是空 不要用 if(strlen($str)>0)  直接 if($str) 后者性能好很多

5,mysql_close($conn);是必须得  开始就得有这样的好习惯!

你可能感兴趣的:(php笔记)