JavaScript ==> PHP:
方法一: 先用PHP生成js代码,然后通过浏览器的自动刷新,将javascript变量传递到PHP脚本中。
注意:在实际应用中要防止用户在地址栏内更改传递的变量值。
<?php
if($qq) echo $qq.'<br>';
else echo "<script language='javascript'>var qq='我的QQ是1234567'; location.href='?qq='+qq; </script>";
echo $qq;
?>
方法二:先用document.cookie方法把js变量写入cookie中,再用PHP取出。
<script language="javascript" type="text/javascript">
var name = "myqq",value="10000";
document.cookie = name+" = "+value+";"
</script>
<?php
echo $_COOKIE["myqq"]."<br/>";
$my = "我的QQ是".$_COOKIE["myqq"];
echo $my;
?>
方法三:
<script>
var a = '我是旭日!';
</script>
<?php
$c = "<script>document.write(a);</script>";
echo $c;
?>
PHP ==> JavaScript :
//方法一:以html为媒 ......
JavaScript ==> PHP:
方法一: 先用PHP生成js代码,然后通过浏览器的自动刷新,将javascript变量传递到PHP脚本中。
注意:在实际应用中要防止用户在地址栏内更改传递的变量值。
<?php
if($qq) echo $qq.'<br>';
else echo "<script language='javascript'>var qq='我的QQ是1234567'; location.href='?qq='+qq; </script>";
echo $qq;
?>
方法二:先用document.cookie方法把js变量写入cookie中,再用PHP取出。
<script language="javascript" type="text/javascript">
var name = "myqq",value="10000";
document.cookie = name+" = "+value+";"
</script>
<?php
echo $_COOKIE["myqq"]."<br/>";
$my = "我的QQ是".$_COOKIE["myqq"];
echo $my;
?>
方法三:
<script>
var a = '我是旭日!';
</script>
<?php
$c = "<script>document.write(a);</script>";
echo $c;
?>
PHP ==> JavaScript :
//方法一:以html为媒 ......
找到一个能用的 分享给你吧
刚已经在本机做过认真测试,绝对无问题
(表结构:
id 表ID(唯一)
title 各类标题
flid 类别的ID (大类为1 中类为2 小类为3)
pid 上类的ID(大类就跟大类,提交中类的时候这地方写大类的ID,提交小类的时候写中类的ID) )
<?php
$link=mysql_connect("localhost","root","root") or die("数据库服务器连接错误".mysql_error());
mysql_select_db("sanji",$link) or die("数据库访问错误".mysql_error());
mysql_query("set character set gb2312");
mysql_query("set names gb2312");
?>
<html>
<head>
<title>下拉框连动</title>
</head>
<body>
<script language="JavaScript">
<!--
var subcat = new Array();
<?
$i=0;
$sql="select * from sanji where flid=2";
$query=mysql_query($sql,$link);
while($arr=mysql_fetch_array($query))
{
echo "subcat[".$i++."] = new Array('".$arr["pid"]."','".$arr["title"]."','".$arr["id"]."');\n";
}
?>
var subcat2 = ......
连接ACCESS数据库的简单JSP代码:
<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<%@ page import="java.sql.*" %>
<%
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;
String url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ=" + application.getRealPath("jsp.mdb"); //与JSP文件同一目录下的ACCESS数据库文件名:jsp.mdb
Connection conn = DriverManager.getConnection(url,"",""); //连接ACCESS数据库(url,"用户名","密码"),为空即没有设置数据的登录密码。
Statement stmt=conn.createStatement();
String sql="select * from login"; //构造SQL语句
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){
int id=rs.getInt("id"); //得到数据库里面的字段id的值。
String username=rs.getString("username"); //得到数据库里面的字段username的值。
String password=rs.getString("password");
}
//关闭与数据库的连接
rs.close();
stmt.close();
conn. ......
连接ACCESS数据库的简单JSP代码:
<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<%@ page import="java.sql.*" %>
<%
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;
String url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ=" + application.getRealPath("jsp.mdb"); //与JSP文件同一目录下的ACCESS数据库文件名:jsp.mdb
Connection conn = DriverManager.getConnection(url,"",""); //连接ACCESS数据库(url,"用户名","密码"),为空即没有设置数据的登录密码。
Statement stmt=conn.createStatement();
String sql="select * from login"; //构造SQL语句
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){
int id=rs.getInt("id"); //得到数据库里面的字段id的值。
String username=rs.getString("username"); //得到数据库里面的字段username的值。
String password=rs.getString("password");
}
//关闭与数据库的连接
rs.close();
stmt.close();
conn. ......
MVC是由模型层,视图层,控制层组成,MVC提高了开发效率,便于维护
分页是Web开发中的一个重要的功能,那怎样实现分页呢???
假分页是指查询出所有的数据,只显示需要的数据,它完全由程序实现,开发效率不高,但容易实现
代码如下:
一.模型层
UserInfo(JavaBean的实现,传递数据)
package com.feng.test;
import java.io.Serializable;
public class UserInfo implements Serializable {
private int userid;
private String username;
private String password;
public int getUserid() {
return userid;
}
public void setUserid(int userid) {
this.userid = userid;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
二.数据层
DataBae(数据库的连接)
package com.feng.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatem ......
熟悉C++的人对于两个字符串比较的代码一定很了解:
(string1==string2)
但在java中,这个代码即使在两个字符串完全相同的情况下也会返回false
Java中必须使用string1.equals(string2)来进行判断
补充
如果:
string s1=new String("Hello");
string s2=new String("Hello");
则(s1==s2)=false
如果:
string s1="Hello";
string s2="Hello";
则(s1==s2)=true;
因为他们指向的同一个对象。
如果把其他变量的值赋给s1和s2,即使内容相同,由于不是指向同一个对象,也会返回false。所以建议使用equals(),因为equals比较的才是真正的内容 ......
最简单的服务器接受单用户请求的socket编程模型,代码写得不好,只是用来阐明意思
client side
import java.net.*;
import java.util.*;
import java.io.*;
public class Client {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try
{
Socket clientSocket=new Socket("localhost",9009);//connect
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(),true);
Scanner scanner=new Scanner(System.in);
System.out.print("username:");
String username=scanner.next();
System.out.print("password:");
String password=scanner.next();
out.println(username+" "+password);
String input;
while(true)
{
input=in.readLine();
if(input.equals("ok"))
{
System.out.println("message sent, cilent exit");
break;
}
}
in.close();
out.close();
cl ......