PHP中连接MSSQL
因为要写个SF的注册页面。数据库就不能随便选,只能MSSQL了。打开PHP程序的目录,在php.ini文件里开启支持mssql的扩展
extension=php_mssql.dll
如果没这个dll的话,Google后下载一个放php的扩展目录里。
这样基本就可以的,使用的时候,基本参照mysql的命令来。
非常简单,不过,不记下来,只怕回头又忘了......
测试一下
<?php
$server = "(local)";
$user = "GameSrv";
$password = "luna";
$database = "lunamember";
$res = mssql_connect($server,$user,$password);
if(!$res)
echo "无法连接MSSQL服务器";
if(!mssql_select_db($database,$res))
echo "无法打开".$database."数据库";
$exec = "select * from chr_log_info";
$result = mssql_query($exec);
while($rs = mssql_fetch_object($result))
{
echo "名字:".$rs->id_loginid."
";
echo "密码:".$rs->id_passwd."
";
echo "性别:".$rs->id_sexType."
";
echo "-------------------------
";
}
mssql_close($res);
?>
写完了注册处理后,往xampp1.7里放的时候,出现不能连接数据库的问题。
Google了半天,在delph4php2.0中找了个2000.80.194.0版本的ntwdblib.dll,覆盖到了sytem32和apache/bin中,就可以正常连接SQL2000了。 终于写完了。现炒现卖的PHP,SQL,HTML方面的东西。还有不少BUG,不过管他呢,勉强能用就行。
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>注册页面</title>
</head>
<body>
<?php
$_SESSION["Reg_Sucess"] = 0;
$_SESSION["InputOK"] = 0;
$_SESSION["Find"] = 0;
if($_POST["NewUserName"] != 0or $_POST["NewUserPwd"] != 0)
{
$_SESSION["InputOK"] = 1;
}
$SQL = mssql_connect("(local)","GameSrv","luna");
if (!$SQL) echo "无法连接数据库";
if(!mssql_select_db("lunamember")) echo "无法连接lunamember数据库!";
$RegMemberInfo = mssql_query("select id_loginid from chr_log_info where id_loginid = '". $_POST["NewUserName"] ."'");
while($MS = mssql_fetch_object($RegMemberInfo))
{
if($_POST["NewUserName"] == $MS->id_loginid)
{
$_SESSION["Find"] = 1;
}
}
if($_SESSION["Find"] == 0 and $_SESSION["InputOK"] == 1)
{
$sql_index = mssql_query("select max(id_idx)mid from chr_log_info");
$si = mssql_fetch_object($sql_index);
$i = ($si->mid + 1).",";
$n = "'".$_POST["NewUserName"]."',";
$p = "'".$_POST["NewUserPwd"]."',";
$s = "'".$_POST["NewSexType"]."'";
$sql_new_id = mssql_query("insert into chr_log_info(id_idx,propid,id_loginid,id_passwd,id_sextype) values(".$i.$i.$n.$p.$s.");");
$_SESSION["Reg_Sucess"] = 1;
}
?>
欢迎注册LunaOnline!
<hr/>
<form action="reg.php" method="post">
账号:
<input type="text" name="NewUserName" id="NewUserName"maxlength="16"/>
密码:
<input type="password" name="NewUserPwd" id="NewUserPwd"maxlength="16"/>
性别:
<select name="NewSexType" id="NewSexType">
<option value="0">男</option>
<option value="1">女</option></select>
<input type="submit" name="register" id="register" value="注册" />
</form>
<?php
if($_SESSION["Reg_Sucess"] == 0 and $_SESSION["InputOK"] == 0 and $_SESSION["Find"] == 0)
{
echo '<hr/>请检查是否已经正确的输入账号和密码?';
}
if($_SESSION["Reg_Sucess"] == 0 and $_SESSION["InputOK"] == 1 and $_SESSION["Find"] == 1)
{
echo '<hr/>注册失败,是不是重名了?';
}
if($_SESSION["Reg_Sucess"] == 1 and $_SESSION["InputOK"] == 1 and $_SESSION["Find"] == 0)
{
echo '<hr/>注册成功!
返回登陆页面';
}
?>
<?php
mssql_close($SQL);
session_destroy();
?>
</body>
</html>
其实写了四个版本,两个是在Delphi4PHP里面写的,一个面向对象,一个面向过程。结果Crack的D4P总是出错,无法正常使用。于是转Dreamweaver,不用vcl4php,又写了两个...... - -不太清楚 是作什么的啊^^? 那个最近在玩LunaOnline的私服,就是这么回事,呵呵~ 好像因为开SF所以研究数据库的人好多^^
以前也玩过,RO的~^^ 呵呵,也不能算是白研究啊。
现在SQL,PHP差不多会了一点点了,又开始啃FLEX,打算写个Web游戏看看 Flex 不是ADOBE的那个?
WEB 游戏,以前看过某些,也有做得很好的,白之拌?似乎有专门的制作群呢^^ 白之绊 是RMXP的游戏吧.
页:
[1]