用php打印出当天的时间,打印格式是2007-05-01 22:21:21
(用php打印出前一天的时间,打印格式是2007-05-01 22:21:21)
<?php
//echo date('Y-m-d H:i:s',time()-60*60*24
echo date("Y:m:d H:i:s",strtotime("-1 day"));
?>
用php写一段代码,实现不使用第3个变量,交换$a,$b的值,$a和$b的初如值自己定
方案一:适用于变量为数字的
$a =1;
$b =2;
$a = $a+$b; //$a=3,$b=2;
$b = $a-$b; //$a=3,$b=1;
$a = $a-$b; //$a=2,$b=1;
方案二:使用所有的变量
$a = 'abc';
$b = 'def';
list($a,$b) = array($b,$a); // list ()— 把数组中的值赋给一些变量
echo $a,$b;
如何将’John’新增到users队列?
请写出至少四个php魔术方法.
__get()
__set()
__isset()
__unset()
__get()
__set()
__isset()
__unset()
在php5中如何使对象可以像数组一样进行foreach循环
Include 和 require 有什么区别?
请解释HTTP协议状态码中的200、404、500的含义。
MVC软件设计模式的含义,并简述其特点。
你使用过哪些php框架
<input type=”button” value=”提交” onclick=”fun(this)”>,实现给用户确认的机会,如果确定,表单提交。
(
表单提交过程中的onsubmit()和onclick()
1、问题描述
有一个表单可以处理三个事件:新建、修改和删除,要求在处理删除事件时给出确认提示,其他操作只要输入合法,提交后就可进行。
FormValid(form)对输入数据统一进行合法性验证。
2、实施
为了区分提交的事件,在三个按钮的onclick()中为隐藏域赋值作为标记。
<input type="hidden" name="hidden_submit" id="hidden_submit" value="none" />
然后将三个按钮类型设置为button,验证通过后由submit()函数提交即可。
<input type="button" value="新建" onclick="fun_new(this)"/>
<input type="button" value="修改" onclick="fun_update(this)" />
<input type="button" value="删除" onclick="fun_delete(this)"/>
对于需要确认才能提交的删除按钮:
function fun_delete(){
document.form.hidden_submit.value = "DELETE";
if(FormValid(document.form)){
if(confirm("确认删除?")){
document.form.submit();
}
}
}
3、讨论
既然FormValid()函数是全表单的验证,那能否在表单的onsubmit()中进行?
<form id="form" name="form" method="post" action="#" onsubmit="return FormValid(this)"></form>
onsubmit()函数在返回值为true时提交表单。
这时,三个按钮的类型应为submit()。
这样,按钮中只需给隐藏域赋值,验证交予表单处理。然而问题是如何给出删除确认?
倘若在删除按钮的onclick()函数中进行,则有可能用户点击确认删除,而结果却是不满则提交条件。这是因为按照逻辑,应是数据合法性验证通过后才能给出删除操作的确认提示,而事实上onclick()函数的执行顺序先于onsubmit()。
所以只能在onsubmit()中给出删除提示,根据之前的思路很容易写出:
<form id="form" name="form" method="post" action="#" onsubmit="fun_submit(this)"></form>
function fun_submit(form){
var flag = false;
if(FormValid(form)){
flag = true;
if( form.hidden_submit.value=="DELETE"){
if(!confirm("确认删除?")) flag = false;
}
}
return flag;
}
或者直接用三元表达式写在form中:
<form id="form" name="form" method="post" action="#"
onsubmit="return FormValid(this)?this.hidden_submit.value == 'DELETE'? confirm('确定删除该用户账号?'):true::false">
4、总结
问题很简单,主要两个要点:
1、onclick()和onsubmit()的执行顺序。参考onSubmit和onclick区别
onsubmit是表单上(也只能是表单)用的,提交表单前会触发
onclick是按钮等控件上用的,用来触发点击事件.
用作数据验证的时候,可以选择在submit按钮上的onclick中验证,可以在onsubmit中验证.但是从事件触发顺序上来说,onclick更早.顺序是:
用户点击按钮->onclick->如果onclick返回有效或未处理onclick则提交表单->onsubmit->如果onsubmit未处理或返回true,则提交,否则取消提交.
onsubmit中返回false会引起取消表单提交;
onclick中返回false则会引起此次点击操作被判断为无效,则也就不会引起表单提交.
2、三目运算符可以简化代码,但有时不利于阅读。
)
<div id=”a”>some content</div>,<input type=”button” vlaue=”切换” onclick=”fun()”>,实现点击后div隐藏,再点击后显示
JS点击显示隐藏密码
思路:获取元素,判断点击,如果DIV显示就隐藏,如果DIV隐藏就显示出来。
复制代码
1 if(DIV是显示的){
2 div.style.display='none';
3 }
4 else{
5 div.style.display='block';
6 }
复制代码
代码:
style:
1 <style>
2 #text{display:block;width:300px;cursor:pointer;height:20px;border:solid 1px #CCC;}
3 #menu{display:none;width:300px;height:100px;border:solid 1px #CCC;}
4 </style>
js:
复制代码
<script type="text/javascript">
window.onload=function(){
var wenzi=document.getElementById('text');
var div=document.getElementById('menu');
wenzi.onfocus=function(){
if(div.style.display=='block'){ // == 判断div.display是否为显示
div.style.display='none'; //= 赋值也可了解成改变
}
else{
div.style.display='block';
}
}
};
</script>
复制代码
html
<span id="text">点击显示菜单,再点击隐藏菜单</span>
<div id="menu">这是文字哦。</div>
你是如何使用jquery中的ajax的?
Jquery中的hover()和toggle()有什么区别?
Jquery中的hover()和toggle()用法
博客分类: 前端开发
hover(fn1,fn2): 一个模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法。当鼠标移动到一个匹配的元素上面时,会触发指定的第一个函数。当鼠标移出这个元素时,会触发指定的第二个函数。
//当鼠标放在表格的某行上时将class置为over,离开时置为out。
$("tr").hover(function(){
$(this).addClass("over");
},
function(){
$(this).addClass("out");
});
toggle(evenFn,oddFn): 每次点击时切换要调用的函数。如果点击了一个匹配的元素,则触发指定的第一个函数,当再次点击同一元素时,则触发指定的第二个函数。随后的每次点击都重复对这两个函数的轮番调用。
//每次点击时轮换添加和删除名为selected的class。
$("p").toggle(function(){
$(this).addClass("selected");
},function(){
$(this).removeClass("selected");
});
两个函数都能实现轮番调用两个函数。。。。
按要求写出sql语句
表 info_user(用户表)
U_idU_nameArea_id
1张三01
2李四02
3王五03
...
表 code_area(地区表)
Area_idArea_name
01重庆
02成都
03北京
...
查出所在地区为重庆的用户,形如
U_idU_nameArea_name
1张三重庆
按要求写出sql语句
表 info_user(用户表)
U_idU_name
1张三
2李四
3王五
...
表 info_user_consumer(用户消费表)
C_idU_id
11
21
32
42
52
63
71
8Null
...
查出前10位消费次数小于2的会员,按消费次数排倒序,形如
U_idU_nameC_count(消费次数)
3王五1
这个是直接用一个字查询当作字段 作了个别名
select (select U_id from ((select U_id,count(C_id) C_count from info_user_consumer group by U_id having C_count<2) b)) U_id,U_name,C_count from (select U_id,count(C_id) C_count from info_user_consumer group by U_id having C_count<2) b inner join info_user on b.U_id = info_user.U_id;
下面这个是简化了的,它是取临时表中的U_id 作为字段显示出来
select b.U_id,U_name,C_count from (select U_id,count(C_id) C_count from info_user_consumer group by U_id having C_count<2) b inner join info_user on b.U_id = info_user.U_id;
根据以下条件编写程序,php实现
F(n)=1 当n=1,2时
F(n)=F(n-1)+F(n-2) 当n>2
编写函数fib($n),输入n的值求出值
<?php
//非递归
function foo_1($num){
$arr = array();
if ($num > 0) $arr[0] = 2;
if ($num > 1) $arr[1] = 3;
if ($num > 2) {
$result = $arr[0] + $arr[1];
for($i=2; $i<$num; $i++) {
$arr[$i] = $arr[$i-1] + $arr[$i-2];
$result = $result + $arr[$i];
}
}
print_r($arr);
}
//递归
function foo_2($num){
if ($num == 1 ) {
return 2;
} elseif ($num == 2) {
return 3;
} elseif ($num > 2) {
return foo_2($num-1) + foo_2($num-2);
}
}
foo_1(4);
echo foo_2(4);
?>
使用php写一段简单查询,查出所有姓名为”张三”的内容并打印出来(包含链接mysql数据库、查询数据、展示数据)
Table User
Name Tel Content Date
张三 13398876543 大专毕业 2006-10-11
张三 13398876343 本科毕业 2006-10-15
张四 13398886343 本科毕业 2006-10-15
<?php
//连接数据库
mysql_connect("localhost","root","");//连接服务器
mysql_select_db("User");//连接数据库
mysql_query("set names utf8");//设置数据库编码
//$res=mysql_query($sql);
$result=mysql_query("select * from student where Name='张三'");
if($row=mysql_fetch_array($result))
{
echo $row['Name'].$row['Tel'].$row['Content'].$row['Date'];
echo "<br>";
}else{
echo "读取失败!";
}
?>