想用JAVASCRIPT调用PHP函数,调用没有什么问题,但是传值就麻烦了
PHP 传值给JAVASCRIPT www.yippeesoft.com
$k=1;
echo \’<Script LANGUAGE=JavaScript>\’;
echo "var y=$k;";
echo "</script>";
但是 JAVASCRIPT不能传值给PHP: www.yippeesoft.com
javascript的变量值能赋给PHP变量?
PHP在服务器端,而JS在客户端,只有提交过去
这个完全是不可逆的逻辑
代码的运行是先服务器然后才客户端,php属于服务器端脚本,运行完成之后得到的结果发送到客户端,让客户端脚本进行处理,而仅仅只有一个页面的时候,无论如何是不能将客户端的JS变量赋给服务器端的
请问能在javascript中对session值进行操作吗?
因为Javascript是客户端脚本程序;Session是服务器端用来记录信息的类似变量的东东,是不一样的,不能相互控制;
cookie的基本格式 www.yippeesoft.com
cookiename+cookievalue;expire=expirationdategmt;path=urlpath;domain=sitedomain
其中各项以;分开,首先是指定cookie的名称,并为其赋值。接下来分别是cookie的有效期,url路径以及域名,在这几项中,除了第一项以外,其它部分均为可选项。
JAVASCRIPT操作COOKIE
expireDate = new Date ;
document.cookie="userName=sfsf;expires="+expireDate.toGMTString() ;
<SCRIPT LANGUAGE="JavaScript">
function setCookie(name,value)
&leftsign; www.yippeesoft.com
var Days = 30;
var exp = new Date(); //new Date("December 31, 9998");
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
&rightsign;
function getCookie(name)
&leftsign; www.yippeesoft.com
thisCookie=document.cookie.split("; ");
for (i=0; i<thisCookie.length;i++)
&leftsign;
temp=thisCookie[i].split("=");
alert(temp);
if(temp[0]==name)
return temp[1];
else
return null;
//alert("\’, and the value is \’"+thisCookie[i].split("=")[1]+"\’<BR>");
&rightsign;
//var arr,reg=new RegExp("(^ &line; )"+name+"=([^;]*)(; &line;$)");
/*var arr,reg=new RegExp("(^ &line; )"+name+"=([^;]*)(; &line;$)");
alert(reg);
if(arr=document.cookie.match(name))
return unescape(arr[2]);
else
return null; */
&rightsign;
function delCookie(name)
&leftsign;
var exp = new Date();
exp.setTime(exp.getTime() – 1);
var cval=getCookie(name);
if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
&rightsign; www.yippeesoft.com
expireDate = new Date ;
document.cookie="userName=sfsf; expires="+expireDate.toGMTString() ;
setCookie("usersfsf","sssssssss");
alert(getCookie("usersfsf"));
delCookie("usersfsf");
alert(thisCookie); www.yippeesoft.com
这是人家的例子,但是实际上页面还是有刷新,这样就比较讨厌~
n3856120 – 星期二 十月 07, 2003 1:26 pm
文章主題:
——————————————————————————–
首先感謝 duan 大大的回覆, 我在友站發問時, 也是有人告訴我可以這樣做,
不過我找到另一個比較符合我的想法的, 提出來給大家參考參考囉 ….
<script language="javascript">
function change()&leftsign;
vi = document.form1.select1.options[document.form1.select1.selectedIndex].value;
window.location.href="test.php?id=" +vi;
&rightsign;
</script>
$num = $HTTP_GET_VARS[\'vi\'];
<form name="form1">
<select name="select1" onChange="change()">
<option value="1">A</option>
<option value="2">B</option>
</select>
</form>
————————————-我是分隔線
document.form1.select1.options[document.form1.select1.selectedIndex].value;
這行是當我點選 select1 後用來取得 select 的值同時 reload ,
然後將值用 url 的方式送出, 再用 $num = $HTTP_GET_VARS[\'vi\'];
取得, 如此就是在同一頁完成了 ….
會這樣做的原因是, 原本我是用二階層的關聯式下拉選單, 但因為資料是一個國家對應其下的城市, 全世界的城市約超過兩萬個, 二階層的關聯式下拉選單需要一次全部讀進來, 要相當長的時間, 所以我改用這種方式來處理, 當點選一個國家後才 reload 讀城市, 速度快非常多 …….
希望對大家有幫助 …..
历史博文
- 北新路桥 - 2009
- Communicating with the USB - 2009
- 20070118 CodePlex TortoiseSVN DDBuildTools - 2008
- 20070528 IE7 installer - 2007
- 0518 lnk2005 dllmain LNK1169 - 2006