php sql里面语句单引号里面的变量是可以读取的
$name = '张三';
"select * from table where name ='$name'";
"select * from table where name ='".$name."'";
两个的查询结果是一样的,也就是说SQL语句中的单引号里面的变量也是可以读出来的
php性能效率优化
1.在可以用file_get_contents替代file、fopen、feof、fgets等系列方法的情况下,尽量用 file_get_contents,因为他的效率高得多!但是要注意file_get_contents在打开一个URL文件时候的PHP版本问题;
2.尽量的少进行文件操作,虽然PHP的文件操作效率也不低的;
3.优化Select SQL语句,在可能的情况下尽量少的进行Insert、Update操作;
4.尽可能的使用PHP内部函数(但是我却为了找个PHP里面不存在的函数,浪费了本可以写出一个自定义函数的时间,经验问题啊!);
5.循环内部不要声明变量,尤其是大变量:对象(这好像不只是PHP里面要注意的问题吧?);
6.多维数组尽量不要循环嵌套赋值;
7.在可以用PHP内部字符串操作函数的情况下,不要用正则表达式;
8.foreach效率更高,尽量用foreach代替while和for循环;
9.用单引号替代双引号引用字符串;
10.“用i+=1代替i=i+1。符合c/c++的习惯,效率还高”;
11.对global变量,应该用完就unset()掉
12.在多重嵌套循环中,如有可能,应当将最长的循环放在内层,最短循环放在外层,这样就可以减少cpu跨切循环层的次数,从而优化程序性能。
PHP服务器时间的修改
AJAX实现用户注册检验
reg.html页面
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>This Is K-Make</title>
<style type="text/css">
body{
font-size:12px;
text-align:center;
}
.text{
width:180px;
height:12px;
}
p{
width:600px;
height:20px;
line-height:20px;
text-align:left;
}
p label{
display:block;
width:80px;
height:20px;
line-height:20px;
float:left;
text-align:right;
}
p span{
margin-left:10px;
}
</style>
</head>
<body>
<script language="javascript">
function CreateXmlHttpRequest(){
var xmlHttp;
if(window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}
return xmlHttp;
}
function CheckName(){
var name = document.getElementById('name'); //获取用户名文本框
var span = document.getElementById('name_info'); //获取用于显示结果的span标记
if(name.value.length <= 4){
span.style.color = '#ff0000'; //设置span标记内的字体颜色为红色
span.innerHTML = '用户名长度不能少于4个字符!'; //span标记内容
return false;
}
var xmlHttp = CreateXmlHttpRequest();//创建异步请求对象
var time = new Date().getTime();
var url = 'reg.php?act=reg&name=' + name.value.toLowerCase() + '&tmp=' + time;//构造出请求地址
xmlHttp.open("GET",url,true); //建立一个异步请求
/*这里我们使用GET方式请求
POST方式的请求基本差不多,朋友们自己试试如果不行,在下面给我留言*/
xmlHttp.onreadystatechange = function(){ //监视请求状态
span.style.color = '#ff9900';
span.innerHTML = '查询中,请稍候!';
if(xmlHttp.readyState == 4 && xmlHttp.status == 200){
if(xmlHttp.ResponseText.indexOf('no') != -1){ //如果服务器返回的信息中有no
span.style.color = '#ff0000'; //设置span标记颜色为红色
span.innerHTML = '用户名[' + name.value + ']已经被别的用户使用!';
}else{//如果返回信息中没有no
span.style.color = '#000000';//设置颜色为黑色
span.innerHTML = '用户名[' + name.value + ']可以使用!';
}
return true;
delete xmlHttp; //删除请求对象
}
}
xmlHttp.send(null); //发送请求
}
</script>
<form method="post" action="reg.php">
<p><label>用户名:</label><input type="text" class="text" id="name" name="user" onblur="CheckName()" /><span id="name_info"></span></p>
<p><label>密码:</label><input type="password" class="text" /></p>
<p><label> </label><input type="submit" value="注册" /></p>
</form>
</body>
</html>
reg.php 页面
{
include("mysql_class.php");
$user=$_GET[name];
$sql = "SELECT `user` FROM `guest` WHERE `user` ='$user'";
$query=$db->query($sql);
$result=$db->fetch_row($query);
if($result!='')
{
echo "no";
}
else
{
echo "yes";
}
}
javascript中简单的一句代码,实现删除前的确认对话框
<td class="list"><a href="boardedit.asp?boardid=<%=rs("boardid")%>">修改</a>/<a href="boarddel.asp?boardid=<%=rs("boardid")%>" onclick='return confirm("确认删除码?")'>删除</a></td>
但不知道为什么把其中的单引号换成双引号就会没有效果??
谁知道告诉我一下