php 网站在线安装源码
<?php
/*
+-------------------------------------------
|
| Technology of WeSpace Software
| ========================================
| Powered by WeSpace
| (c) 2006 wane.net
| F_Space Ver3.x
| ========================================
| Site: http://www.wesofts.com
|
+-------------------------------------------
| Autohr : wsfuyibing
| Email : websearch@163.com
| MSN : websearch@163.com
+-------------------------------------------
*/
error_reporting(E_ERROR | E_WARNING | E_PARSE);
set_magic_quotes_runtime(0);
define('IN_www.111cn.net',true);
define('IN_LICENSED',true);
define('WANE_ROOT','../');
$timestamp = time();
$configfile = '../config.inc.php';
/*
+-------------------------------------------
+ Check PHP version
+-------------------------------------------
*/
if (@phpversion() < '4.1.0')
{
$_COOKIE = &$HTTP_COOKIE_VARS;
$_SERVER = &$HTTP_SERVER_VARS;
$_FILES = &$HTTP_POST_FILES;
$_GET = &$HTTP_GET_VARS;
$_POST = &$HTTP_POST_VARS;
}
/*
+-------------------------------------------
+ Language
+-------------------------------------------
*/
$lang = in_array($_GET['lang'],array('gbk','big5','utf-8-gbk','utf-8-big5')) ? $_GET['lang'] : 'utf-8-gbk';
$charset = substr($lang ,0,5);
if (!file_exists('./'.$lang.'/language.php'))
{
exit('Can not load language file . ');
}
else
{
require_once './'.$lang.'/language.php';
}
/*
+-------------------------------------------
+ Step
+-------------------------------------------
*/
$step = file_exists('../upload/install.lock') ? '0' : ($_GET['step'] ? $_GET['step'] : '1');
$steps = 16;
$step = $step > $steps ? $steps : $step;
/*
+-------------------------------------------
+ Template
+-------------------------------------------
*/
$tpl_header = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'."\n";
$tpl_header .= '<html xmlns="http://www.w3.org/1999/xhtml">'."\n";
$tpl_header .= '<head>'."\n";
$tpl_header .= '<meta http-equiv="Content-Type" content="text/html; charset='.$charset.'" />'."\n";
$tpl_header .= '<title>'.$tplang['title'].'</title>'."\n";
$tpl_header .= '<link href="style.css" rel="stylesheet" type="text/css" />'."\n";
$tpl_header .= '</head>'."\n";
$tpl_header .= '<body>'."\n";
$tpl_header .= '<table border="0" cellpadding="0" cellspacing="0" >'."\n\t".'<tr>'."\n\t\t".'<td class="headtitle">'.$tplang['title'].'</td>'."\n\t\t".'<td class="headsteps">'.($step > 1 ? $tplang['lang_'.$lang].' <br />' : '').$tplang['step_name'].': '.$tplang['step'.$step].'('.$tplang['step_cur'].$step.$tplang['step_unit'].'/'.$tplang['step_total'].$steps.$tplang['step_unit'].')</td>'."\n\t".'</tr>'."\n".'</table>'."\n";
$tpl_footer = '<table border="0" cellpadding="0" cellspacing="0" >'."\n\t".'<tr>'."\n\t\t".'<td class="footer">'.$tplang['footer'].'</td>'."\n\t".'</tr>'."\n".'</table>'."\n".'</body>'."\n";
$tpl_footer .= '</html>';
/*
+-------------------------------------------
+ Start Install
+-------------------------------------------
*/
if (file_exists('../upload/install.lock'))
{
echo $tpl_header;
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step0_1']?>
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
elseif ($step == '1')
{
echo $tpl_header;
?>
<div class="step1">
<ol>
<li>
<a href="install.php?lang=gbk&step=2"><?=$tplang['lang_gbk']?></a>
</li>
<li>
<a href="install.php?lang=big5&step=2"><?=$tplang['lang_big5']?></a>
</li>
<li>
<a href="install.php?lang=utf-8-gbk&step=2"><?=$tplang['lang_utf-8-gbk']?></a>
</li>
<li>
<a href="install.php?lang=utf-8-big5&step=2"><?=$tplang['lang_utf-8-big5']?></a>
</li>
</ol>
</div>
<?
echo $tpl_footer;
}
elseif ($step == '2')
{
echo $tpl_header;
?>
<div class="step2">
<?=nl2br($tplang['license'])?>
</div>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<a href="install.php?lang=<?=$lang?>&step=<?=$step-1?>"><?=$tplang['step_last']?></a>
<a href="install.php?lang=<?=$lang?>&step=<?=$step+1?>"><?=$tplang['step_next']?></a>
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
elseif ($step == '3')
{
function filewrite()
{
return (file_exists('../config.inc.php') && is_writable('../config.inc.php')) ? '<span class="yes">'.$GLOBALS['tplang']['yes'].'</span>' : '<span class="no">'.$GLOBALS['tplang']['no'].'</span>';
}
function dirwrite($folder)
{
$filename = '../'.$folder.'/index.htm';
$fp = @fopen($filename,'w+');
if (!$fp)
{
return '<span class="no">'.$GLOBALS['tplang']['no'].'</span>';
}
else
{
@fwrite($fp,' ');
fclose($fp);
return '<span class="yes">'.$GLOBALS['tplang']['yes'].'</span>';
}
}
echo $tpl_header;
?>
<div class="step3">
<ol>
<li>
<?=$tplang['step3_8']?> <?=filewrite()?>
</li>
</ol>
</div>
<div class="step3">
<ol>
<li style="list-style:none;padding-left:0px;color:#ff0000; "><?=$tplang['step3_0']?></li>
<li>
<?=$tplang['step3_1']?> <?=dirwrite('upload')?>
</li>
<li>
<?=$tplang['step3_2']?> <?=dirwrite('upload/cards')?>
</li>
<li>
<?=$tplang['step3_3']?> <?=dirwrite('upload/gifts')?>
</li>
<li>
<?=$tplang['step3_4']?> <?=dirwrite('upload/group')?>
</li>
<li>
<?=$tplang['step3_5']?> <?=dirwrite('wespacedata')?>
</li>
<li>
<?=$tplang['step3_6']?> <?=dirwrite('wespacedata/cache')?>
</li>
<li>
<?=$tplang['step3_7']?> <?=dirwrite('wespacedata/template')?>
</li>
</ol>
</div>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<a href="install.php?lang=<?=$lang?>&step=<?=$step-1?>"><?=$tplang['step_last']?></a>
<a href="install.php?lang=<?=$lang?>&step=<?=$step+1?>"><?=$tplang['step_next']?></a>
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
elseif ($step == '4')
{
function filewrite()
{
return (file_exists('../config.inc.php') && is_writable('../config.inc.php')) ? '<span class="yes">'.$GLOBALS['tplang']['yes'].'</span>' : '<span class="no">'.$GLOBALS['tplang']['no'].'</span>';
}
if (!file_exists($configfile))
{
echo $tpl_header;
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step4_0']?>
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
else
{
require_once $configfile;
echo $tpl_header;
?>
<div class="step3">
<ol>
<li>
<?=$tplang['step3_8']?> <?=filewrite()?>
</li>
</ol>
</div>
<form action="install.php?lang=<?=$lang?>&step=5&submit=1" method="post" name="wane_post">
<table border="0" cellspacing="0" cellpadding="0" class="step4">
<? foreach ($conf as $key=>$val){?>
<tr>
<td class="alignl"><?=$tplang['step4_'.$key]?></td>
<td class="alignr"><input type="text" name="conf[<?=$key?>]" value="<?=$val?>" /></td>
</tr>
<? }?>
<? foreach ($urlconf as $key=>$val){?>
<tr>
<td class="alignl"><?=$tplang['step4_'.$key]?></td>
<td class="alignr"><input type="text" name="urlconf[<?=$key?>]" value="<?=$val?>" /></td>
</tr>
<? }?>
<tr>
<td colspan="2" class="alignc">
<input type="hidden" name="configsubmit" value="1" />
<input type="button" name="LastStep" value="<?=$tplang['step_last']?>" onclick="location='install.php?lang=<?=$lang?>&step=<?=$step-1?>'" />
<input type="submit" name="Submit" value="<?=$tplang['step_confsave']?>" />
<input type="button" name="Skipit" value="<?=$tplang['step_skip']?>" onclick="location='install.php?lang=<?=$lang?>&step=<?=$step+2?>'" />
</td>
</tr>
</table>
</form>
<?
echo $tpl_footer;
}
}
elseif ($step == '5')
{
require_once WANE_ROOT.'install/query/5.php';
header("location:install.php?lang={$lang}&step=6");
}
elseif ($step == '6')
{
if (!file_exists($configfile))
{
echo $tpl_header;
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step4_0']?>
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
else
{
require_once $configfile;
$conn = @mysql_connect($conf['dbserver'],$conf['dbuser'],$conf['dbpass']);
echo $tpl_header;
if (!$conn)
{
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step6_1_0']?>
</td>
</tr>
</table>
<?
}
else
{
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step6_1_1']?>
</td>
</tr>
</table>
<?
$sels = @mysql_select_db($conf['dbname'],$conn);
if (!$sels)
{
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step6_2_0']?>
</td>
</tr>
</table>
<?
}
else
{
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step6_2_1']?>
</td>
</tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<a href="install.php?lang=<?=$lang?>&step=<?=$step-2?>"><?=$tplang['step_last']?></a>
<a href="install.php?lang=<?=$lang?>&step=<?=$step+1?>"><?=$tplang['step_next']?></a>
</td>
</tr>
</table>
<?
}
}
echo $tpl_footer;
}
}
elseif ($step == '7')
{
if (!file_exists($configfile))
{
echo $tpl_header;
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step4_0']?>
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
else
{
echo $tpl_header;
$sqlfile = './sql/struct.php';
if (!file_exists($sqlfile))
{
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step7_0_0']?> (<?=$sqlfile?>)
</td>
</tr>
</table>
<?
}
else
{
$fp = @fopen($sqlfile,'r');
if (!$fp)
{
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step7_0_1']?> (<?=$sqlfile?>)
</td>
</tr>
</table>
<?
}
else
{
require_once WANE_ROOT.'install/query/7.php';
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step7_1']?>
</td>
</tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<a href="install.php?lang=<?=$lang?>&step=<?=$step-1?>"><?=$tplang['step_last']?></a>
<a href="install.php?lang=<?=$lang?>&step=<?=$step+1?>"><?=$tplang['step_next']?></a>
</td>
</tr>
</table>
<?
}
}
echo $tpl_footer;
}
}
elseif ($step >= '8' && $step <= '14')
{
if (!file_exists($configfile))
{
echo $tpl_header;
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step4_0']?>
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
else
{
echo $tpl_header;
$sqlfile = './'.$lang.'/data'.$step.'.php';
if (!file_exists($sqlfile))
{
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step7_0_0']?> (<?=$sqlfile?>)
</td>
</tr>
</table>
<?
}
else
{
$fp = @fopen($sqlfile,'r');
if (!$fp)
{
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step7_0_1']?> (<?=$sqlfile?>)
</td>
</tr>
</table>
<?
}
else
{
require_once WANE_ROOT.'install/query/8-14.php';
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<?=$tplang['step14_1']?>
</td>
</tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<a href="install.php?lang=<?=$lang?>&step=<?=$step-1?>"><?=$tplang['step_last']?></a>
<a href="install.php?lang=<?=$lang?>&step=<?=$step+1?>"><?=$tplang['step_next']?></a>
</td>
</tr>
</table>
<?
}
}
echo $tpl_footer;
}
}
elseif ($step == '15')
{
echo $tpl_header;
?>
<form action="install.php?lang=<?=$lang?>&step=<?=$step+1?>&submit=1" method="post" name="wane_post">
<table border="0" cellspacing="0" cellpadding="0" class="step15">
<tr>
<td class="alignl"><?=$tplang['step15_u']?></td>
<td class="alignl"><input type="text" name="username" value="<?=$val?>" /></td>
</tr>
<tr>
<td class="alignl"><?=$tplang['step15_p']?></td>
<td class="alignl"><input type="text" name="password" value="<?=$val?>" /></td>
</tr>
<tr>
<td class="alignl"><?=$tplang['step15_s']?></td>
<td class="alignl">
<input name="sex" type="radio" value="1" checked /> <?=$tplang['step15_s1']?>
<input name="sex" type="radio" value="2" /> <?=$tplang['step15_s2']?>
</td>
</tr>
<tr>
<td class="alignl"><?=$tplang['step15_e']?></td>
<td class="alignl"><input type="text" name="email" value="<?=$val?>" /></td>
</tr>
<tr>
<td colspan="2" class="alignc">
<input type="hidden" name="configsubmit" value="1" />
<input type="submit" name="Submit" value="<?=$tplang['step_confsave']?>" />
</td>
</tr>
</table>
</form>
<?
echo $tpl_footer;
}
else
{
$configsubmit = trim($_POST['configsubmit']);
if ($step == '16' && $configsubmit)
{
$magic = @get_magic_quotes_gpc();
function cutempty($varchar)
{
global $magic,$_POST;
$varchar = $magic ? stripslashes($_POST[$varchar]) : $_POST[$varchar];
return addslashes(htmlspecialchars(str_replace(array(" ","\n","\t","\r"),array("","","",""),$varchar)));
}
$username = substr(cutempty('username'),0,15);
$password = cutempty('password');
$email = cutempty('email');
$sex = cutempty('sex');
if (!$username || !$password || !$email || !$sex)
{
echo $tpl_header;
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<br />
<?=$tplang['step15_1_0']?><br /><br />
<a href="install.php?lang=<?=$lang?>&step=<?=$step-1?>"><?=$tplang['step_last']?></a>
<br /> <br />
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
else
{
require_once WANE_ROOT.'install/query/16.php';
echo $tpl_header;
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<br />
<?=$tplang['step16_1']?><br /><br />
<a href="../"><?=$tplang['step16_2']?></a>
<br /> <br />
</td>
</tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<br />
<?=$tplang['step15_u']?>:<?=$username?> <br />
<?=$tplang['step15_p']?>:<?=$password?> <br />
<?=$tplang['step15_s']?>:<?=$sex=='1' ? $tplang['step15_s1'] : $tplang['step15_s2']?> <br />
<?=$tplang['step15_e']?>:<?=$email?> <br /><br />
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
}
else
{
echo $tpl_header;
?>
<table border="0" cellspacing="0" cellpadding="0" class="stepchose">
<tr>
<td class="alignc">
<br />
<?=$tplang['step16_1']?><br /><br />
<a href="../"><?=$tplang['step16_2']?></a>
<br /> <br />
</td>
</tr>
</table>
<?
echo $tpl_footer;
}
}
?>
function onlineip()
{
global $_SERVER;
if(getenv('HTTP_CLIENT_IP'))
{
$onlineip = getenv('HTTP_CLIENT_IP');
}
elseif(getenv('HTTP_X_FORWARDED_FOR'))
{
list($onlineip) = explode(',', getenv('HTTP_X_FORWARDED_FOR'));
}
elseif(getenv('REMOTE_ADDR'))
{
$onlineip = getenv('REMOTE_ADDR');
}
else
{
$onlineip = $_SERVER['REMOTE_ADDR'];
}
return $onlineip;
}
function imgdecode($string)
{
global $_SERVER;
$key = md5(onlineip()."\t".$_SERVER['HTTP_USER_AGENT']);
$coded = '';
$string = base64_decode($string);
$keylength = strlen($key);
for($i = 0; $i < strlen($string); $i += $keylength)
{
$coded .= substr($string, $i, $keylength) ^ $key;
}
return $coded;
}
这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。
<center>
<p> </p>
<p> </p>
<form name="form1" method="post" action="login_cl.php">
<table width="500" height="241" border="0" cellpadding="0" cellspacing="0">
<tr align="center">
<td colspan="2" bgcolor="#999999">会员登陆界面 (login.php)|<a href="index.php">返回</a> </td>
</tr>
<tr bgcolor="#CCCCCC">
<td width="137" align="center">用户:</td>
<td width="363"><input name="yd631_name" type="text" id="yd631_name"></td>
</tr>
<tr bgcolor="#D9D9D9">
<td align="center">密码:</td>
<td><input name="yd631_pws" type="password" id="yd631_pws"></td>
</tr>
<tr align="center" bgcolor="#CCCCCC">
<td colspan="2"><input type="submit" name="Submit" value="提交">
<input type="reset" name="submit" value="重置">
</td>
</tr>
</table>
</form>
<p> </p>
</center>
登陆的php处理代码
include("config.php");
?>
<?php
if(empty($_POST["yd631_name"])){
echo ("<script type='text/javascript'> alert('用户名怎么能是空的呢!');history.go(-1);</script>");
}
if(empty($_POST["yd631_pws"])){
echo ("<script type='text/javascript'> alert('密码也不能是空的!');history.go(-1);</script>");
}
$yd631_name= $_POST["yd631_name"]; //用户名已经记录了
$yd631_pws= $_POST["yd631_pws"]; //密码已经记录了
$db=mysql_connect($servername,$sqlservername,$sqlserverpws);
mysql_select_db($sqlname,$db);
$sql="select * from $sqltable where yd631_name='$yd631_name' and yd631_pws='$yd631_pws'";
$result=mysql_fetch_array(mysql_query($sql));
if(!$result){
echo ("<script type='text/javascript'> alert('用户名或密码不正确!');history.go(-1);</script>");
mysql_close();
exit;
}
if($result["yd631_pass"]=="no"){
//验证会员是不是被审核通过了
echo ("<script type='text/javascript'> alert('您还没有被审核呢!');history.go(-1);</script>");
}
session_start();
$_SESSION["name"]="$yd631_name";
echo "<script>location.href='yd631.php';</script>";
?>
config文件。
<?php
//常规参数设置
$servername="localhost"; //主机名
$sqlservername="root"; //mysql数据库用户名
$sqlserverpws="yd631"; //mysql数据库密码
$sqlname="yd631_user"; //数据库名
$sqltable="yd631_users"; //username表名
$admin_name="yd631"; //管理员用户名
$admin_pws="yd631"; //管理员密码
?>
<?php
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>yd631_php_user会员管理实例</title>
</head>
<body><center>
<form name="form1" method="post" action="reg_cl.php"><table width="68%" height="304" border="0" cellpadding="0" cellspacing="1" bgcolor="#000000">
<tr align="center" bgcolor="#CCCCCC">
<td colspan="2">注册(reg.php)||<a href="index.php">返回</a></td>
</tr>
<tr bgcolor="#CCCCCC">
<td width="29%" align="right">用户名:</td>
<td width="71%" align="left"><input name="yd631_name" type="text" id="yd631_name"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td align="right">密码:</td>
<td align="left"><input name="yd631_pws" type="password" id="yd631_pws"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td align="right">性别:</td>
<td align="left"><input name="yd631_sex" type="radio" value="男" checked>
男
<input type="radio" name="yd631_sex" value="女">
女</td>
</tr>
<tr bgcolor="#CCCCCC">
<td align="right">年龄:</td>
<td align="left"><input name="yd631_age" type="text" id="yd631_age" size="10" maxlength="4"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td align="right">电话:</td>
<td align="left"><input name="yd631_call" type="text" id="yd631_call"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td align="right">邮件:</td>
<td align="left"><input name="yd631_email" type="text" id="yd631_email"></td>
</tr>
<tr bgcolor="#CCCCCC">
<td align="right">地址:</td>
<td align="left"><input name="yd631_address" type="text" id="yd631_address" size="40"></td>
</tr>
<tr align="center" bgcolor="#CCCCCC">
<td colspan="2"><input type="submit" name="Submit" value="提交">
<input type="reset" name="Submit" value="重置"></td>
</tr>
</table>
</form>
</center>
</body>
</html>
注册php处理页面
<?php
//注册处理页面
//www.yd631.com
//技术D.JOY
function checkmail($nmail){ /// 验证电子邮件地址
if(ereg("^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+",$nmail))
return true;
else
return false;
}
include("config.php"); //参数页面提取过来
if(empty($_POST["yd631_name"])){
echo ("<script type='text/javascript'> alert('用户名不能是空的');history.go(-1);</script>");
exit;
}
if(empty($_POST["yd631_pws"])){
echo ("<script type='text/javascript'> alert('密码为空了吧');history.go(-1);</script>");
exit;
}
if(empty($_POST["yd631_sex"])){
echo ("<script type='text/javascript'> alert('性别呢');history.go(-1);</script>");
exit;
}
if(empty($_POST["yd631_age"])){
echo ("<script type='text/javascript'> alert('年龄不能为空');history.go(-1);</script>");
exit;
}
if(!is_numeric($_POST["yd631_age"])){
echo ("<script type='text/javascript'> alert('年龄要是数字的');history.go(-1);</script>");
exit;
}
if(empty($_POST["yd631_call"])){
echo ("<script type='text/javascript'> alert('电话不能为空');history.go(-1);</script>");
exit;
}
if(!is_numeric($_POST["yd631_call"])){
echo ("<script type='text/javascript'> alert('电话要是数字的');history.go(-1);</script>");
exit;
}
if(empty($_POST["yd631_email"])){
echo ("<script type='text/javascript'> alert('邮箱不能为空');history.go(-1);</script>");
exit;
}
if($_POST["yd631_email"]!=""){
if(!checkmail($_POST["yd631_email"])) {
echo ("<script type='text/javascript'> alert('不对了,邮箱格式');history.go(-1);</script>");
exit;
}
}
if(empty($_POST["yd631_address"])){
echo ("<script type='text/javascript'> alert('地址不能为空');history.go(-1);</script>");
exit;
}
$yd631_name=$_POST["yd631_name"];
$yd631_pws=$_POST["yd631_pws"];
$yd631_sex=$_POST["yd631_sex"];
$yd631_age=$_POST["yd631_age"];
$yd631_call=$_POST["yd631_call"];
$yd631_email=$_POST["yd631_email"];
$yd631_address=$_POST["yd631_address"];
$yd631_time=date("Y-m-d");
$yd631_pass="no";
$db=mysql_connect($servername,$sqlservername,$sqlserverpws);
mysql_select_db($sqlname,$db) ;
$sql="select * from $sqltable where yd631_name='$yd631_name'";
$result=mysql_fetch_row(mysql_query($sql));
if($result){
echo ("<script type='text/javascript'> alert('用户名在,你就不能注册这个名字');history.go(-1);</script>");
}
else{
$sql="insert into $sqltable(yd631_name,yd631_pws,yd631_sex,yd631_age,yd631_call,yd631_email,yd631_address,yd631_time,yd631_pass) values('$yd631_name','$yd631_pws','$yd631_sex','$yd631_age','$yd631_call','$yd631_email','$yd631_address','$yd631_time','$yd631_pass') ";
mysql_query($sql);
echo ("<script type='text/javascript'> alert('添加成功');location.href='index.php';</script>");
}
?>
mysql数据库
--
-- 表的结构 `yd631_users`
--
CREATE TABLE `yd631_users` (
`yd631_id` int(10) NOT NULL auto_increment,
`yd631_name` varchar(10) default NULL,
`yd631_pws` varchar(10) default NULL,
`yd631_sex` varchar(4) default NULL,
`yd631_age` varchar(4) default NULL,
`yd631_call` varchar(15) default NULL,
`yd631_email` varchar(20) default NULL,
`yd631_address` text,
`yd631_pass` varchar(4) default NULL,
`yd631_time` date default NULL,
PRIMARY KEY (`yd631_id`)
) ;
我们是利用了ExcelFileParser这个扩展来处理的哦,
<!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=utf-8" />
<title>Excel数据获取演示</title>
<meta name="Keywords" content="TODO" />
<meta name="Description" content="TODO"/>
</head>
<body>
<div>
<div>Excel数据获取演示</div>
<div>
<form method="POST" action="/Index/parse" enctype="multipart/form-data">
<input type="file" name="excel" value="" />
<input type="submit" name="submit" value="提交" />
</form>
</div>
</div>
</body>
</html>
<?php
/**
* CopyRight (c) 2009,
* All rights reserved.
* 文件名:
* 摘 要:
*
* @author 星期八 [email=ixqbar@hotmail.com]ixqbar@hotmail.com[/email]
* @version
*/
class IndexAction extends Action
{
/**
* 构造函数
*/
public function __construct()
{
parent::__construct();
}
/**
* 默认索引页
*/
public function index()
{
$this->display();
}
/**
* 提交处理
*/
public function parse()
{
/**
* $_FILES数组说明
* array(n) {
* ["表单文件框名称"] => array(5) {
* ["name"] => 提交文件名称
* ["type"] => 提交文件类型 Excel为"application/vnd.ms-excel"
* ["tmp_name"] => 临时文件名称
* ["error"] => 错误(0成功1文件太大超过upload_max_filesize2文件太大超过MAX_FILE3上传不完整4没有上传文件)
* ["size"] => 文件大小(单位:KB)
* }
* }
*/
$return=array(0,'');
/**
* 判断是否提交
* is_uploaded_file(文件名称)用于确定指定的文件是否使用POST方法上传,防止非法提交,通常和move_upload_file一起使用保存上传文件到指定的路径
*/
if(!isset($_FILES) || !is_uploaded_file($_FILES['excel']['tmp_name']))
{
$return=array(1,'提交不合法');
}
//处理
if(0 == $return[0])
{
import('@.Util.ExcelParser');
$excel=new ExcelParser($_FILES['excel']['tmp_name']);
$return=$excel->main();
}
//输出处理
print_r($return);
}
}
?>
<?php
/**
* CopyRight (c) 2009,
* All rights reserved.
* 文件名:excel数据获取
* 摘 要:
*
* @author 星期八 [email=ixqbar@hotmail.com]ixqbar@hotmail.com[/email]
* @version 0.1
*/
class ExcelParser
{
private $_data=array(0,'');
private $_excel_handle;
private $_excel=array();
/**
* 构造函数
* @param <string> $filename 上传文件临时文件名称
*/
public function __construct($filename)
{
/**
* 引入excelparser类
* 普通方法为
* requires 路径.'excelparser.php';
* import为ThinkPHP自带导入类方法
*/
import('@.Util.PHPExcelParser.excelparser','','.php');
$this->_excel_handle=new ExcelFileParser();
//错误获取
$this->checkErrors($filename);
}
/**
* 错误校验
*/
private function checkErrors($filename)
{
/**
* 方法一
*/
$error_code=$this->_excel_handle->ParseFromFile($filename);
/**
* 方法二
* $file_handle = fopen($this->_filename,'rb');
* $content = fread($file_handle,filesize($this->_filename));
* fclose($file_handle);
* $error_code = $this->_excel->ParseFromString($content);
* unset($content,$file_handle);
*/
switch($error_code)
{
case 0:
//无错误不处理
break;
case 1:
$this->_data=array(1,'文件读取错误(Linux注意读写权限)');
break;
case 2:
$this->_data=array(1,'文件太小');
break;
case 3:
$this->_data=array(1,'读取Excel表头失败');
break;
case 4:
$this->_data=array(1,'文件读取错误');
break;
case 5:
$this->_data=array(1,'文件可能为空');
break;
case 6:
$this->_data=array(1,'文件不完整');
break;
case 7:
$this->_data=array(1,'读取数据错误');
break;
case 8:
$this->_data=array(1,'版本错误');
break;
}
unset($error_code);
}
/**
* Excel信息获取
*/
private function getExcelInfo()
{
if(1==$this->_data[0])return;
/**
* 获得sheet数量
* 获得sheet单元对应的行和列
*/
$this->_excel['sheet_number']=count($this->_excel_handle->worksheet['name']);
for($i=0;$i<$this->_excel['sheet_number'];$i++)
{
/**
* 行于列
* 注意:从0开始计数
*/
$row=$this->_excel_handle->worksheet['data'][$i]['max_row'];
$col=$this->_excel_handle->worksheet['data'][$i]['max_col'];
$this->_excel['row_number'][$i]=($row==NULL)?0:++$row;
$this->_excel['col_number'][$i]=($col==NULL)?0:++$col;
unset($row,$col);
}
}
/**
* 中文处理函数
* @return <string>
*/
private function uc2html($str)
{
$ret = '';
for( $i=0; $i<strlen($str)/2; $i++ )
{
$charcode = ord($str[$i*2])+256*ord($str[$i*2+1]);
$ret .= '&#'.$charcode.';';
}
return mb_convert_encoding($ret,'UTF-8','HTML-ENTITIES');
}
/**
* Excel数据获取
*/
private function getExcelData()
{
if(1==$this->_data[0])return;
//修改标记
$this->_data[0]=1;
//获取数据
for($i=0;$i<$this->_excel['sheet_number'];$i++)
{
/**
* 对行循环
*/
for($j=0;$j<$this->_excel['row_number'][$i];$j++)
{
/**
* 对列循环
*/
for($k=0;$k<$this->_excel['col_number'][$i];$k++)
{
/**
* array(4) {
* ["type"] => 类型 [0字符类型1整数2浮点数3日期]
* ["font"] => 字体
* ["data"] => 数据
* ...
* }
*/
$data=$this->_excel_handle->worksheet['data'][$i]['cell'][$j][$k];
switch($data['type'])
{
case 0:
//字符类型
if($this->_excel_handle->sst['unicode'][$data['data']])
{
//中文处理
$data['data'] = $this->uc2html($this->_excel_handle->sst['data'][$data['data']]);
}
else
{
$data['data'] = $this->_excel_handle->sst['data'][$data['data']];
}
break;
case 1:
//整数
//TODO
break;
case 2:
//浮点数
//TODO
break;
case 3:
//日期
//TODO
break;
}
$this->_data[1][$i][$j][$k]=$data['data'];
unset($data);
}
}
}
}
/**
* 主函数
* @return <array> array(标识符,内容s)
*/
public function main()
{
//Excel信息获取
$this->getExcelInfo();
//Excel数据获取
$this->getExcelData();
return $this->_data;
}
}
?>
相关文章
- 编译安装非常的简单了我们现在的php版本已经到了php7了,下文小编来为各位介绍一篇关于PHP7快速编译安装的步骤,希望文章能够帮助到各位。 一、安装必要一些依赖 yum...2016-11-25
- 这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
- 这篇文章主要介绍了Rstudio中安装package出现的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 获取网站icon,常用最简单的方法就是通过website/favicon.ico来获取,不过由于很多网站都是在页面里面设置favicon,所以此方法很多情况都不可用。 更好的办法是通过google提供的服务来实现:http://www.google.com/s2/favi...2014-06-07
- PHP-FPM我们相信各位用高版本的php经常使用到了,下面整理了一些关于PHP-FPM的笔记,有兴趣的可进来看看。 今天赶上了123System OPenVZ VPS全场半价的机会,购入了一...2016-11-25
- 拜读一个开源框架,最想学到的就是设计的思想和实现的技巧。废话不多说,jquery这么多年了分析都写烂了,老早以前就拜读过,不过这几年都是做移动端,一直御用zepto, 最近抽出点时间把jquery又给扫一遍我也不会照本宣科的翻译...2014-05-31
安装和使用percona-toolkit来辅助操作MySQL的基本教程
一、percona-toolkit简介 percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,这些任务包括: 检查master和slave数据的一致性 有效地对记录进行归档 查找重复的索...2015-11-24Linux安装Pytorch1.8GPU(CUDA11.1)的实现
这篇文章主要介绍了Linux安装Pytorch1.8GPU(CUDA11.1)的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-25- 这篇文章主要介绍了vscode安装git及项目开发过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-05-19
mac下Apache + MySql + PHP搭建网站开发环境
首先为什不自己分别搭建Apache,PHP和MySql的环境呢?这样自己可以了解更多知识,说起来也更酷。可也许因为我懒吧,我是那种“既然有现成的,用就是了”的人。君子生非异也,善假于物也。两千年前的荀子就教导我们,要善于利用工具...2014-06-07- 这篇文章主要为大家详细介绍了Visual Studio 2015下载和安装图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-22
- 现在我们介绍一种在Node下检查简单错误的JS代码验证工具JSHint。 JSHint的具体介绍参考http://www.jshint.com/about/,说直白点儿,JSHint就是一个检查JS代码规范与否的工具,它可以用来检查任何(包括server端和client端...2014-05-31
Centos中彻底删除Mysql(rpm、yum安装的情况)
我用的centos6,mysql让我整出了各种问题,我想重装一个全新的mysql,yum remove mysql-server mysql之后再install并不能得到一个干净的mysql,原来的/etc/my.cnf依然没变,datadir里面的数据已没有任何变化,手动删除/etc/my.cn...2015-03-15- 这篇文章主要介绍了在PyCharm中安装PaddlePaddle的方法,本文给大家介绍的非常想详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-05
- 这篇文章主要介绍了linux服务器快速卸载安装node环境(简单上手),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-22
Ubuntu20.04安装cuda10.1的步骤(图文教程)
这篇文章主要介绍了Ubuntu20.04安装cuda10.1的步骤(图文教程),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-07-30- 这篇文章主要介绍了uni-app从安装到卸载的入门教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-05-15
Postman安装与使用详细教程 附postman离线安装包
这篇文章主要介绍了Postman安装与使用详细教程 附postman离线安装包,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-05- 我要实现的就是下图的这种样式,可参考下面这两个网站的留言板,他们的实现原理都是一样的畅言留言板样式:网易跟帖样式:原理 需要在评论表添加两个主要字段 id 和 pid ,其他字段随意添加,比如文章id、回复时间、回复内容、...2015-11-08
网站广告怎么投放最好?首屏广告投放类型优化和广告位布局优化的案例
网站广告怎么投放最好?一个网站中广告位置最好的是哪几个地方呢,许多的朋友都不知道如何让自己的网站广告收效最好了,今天我们就一起来看看吧。 在说到联盟优化前,...2016-10-10