Php连接mysql实现注册信息和文件上传
2016-04-24 11:25
706 查看
Php连接mysql实现注册信息和文件上传 首先在/register下建一个存图片的文件夹 uploads (/register/uploads) /***************************************************** *******************/ 目录/register/functions/database.php <? $databaseConnection=null; function getConnection(){ $hostname="localhost"; $database="register"; $userName="root"; $password=""; // 密码 global $databaseConnection; $databaseConnection=@mysql_connect($hostname, $userName,$password) or die(mysql_error()); mysql_query("set names 'gbk'"); @mysql_select_db($database,$databaseConnection) or die(mysql_error()); } function closeConnection(){ global $databaseConnection; if($databaseConnection){ mysql_close($databaseConnection) or die (mysql_error()); } } ?> /***************************************************** *******************/ /***************************************************** *******************/ 目录/register/functions/fileSystem.php /*文件上传后会先到临时目录,再把它移动到目标目录*/ <? function upload($file,$filePath){ $error = $file['error']; switch($error){ case 0: $fileName=$file['name']; //文件名 $fileTemp=$file['tmp_name']; //文件临时 目录的路径 $destination=$filePath."/".$fileName; //目标路径 move_uploaded_file($fileTemp, $destination); //移动文件 return "文件上传成功!"; case 1: return "上传附件超过该php.ini中的 upload_max_filesize选项限制的值!"; case 2: return "上传附件的大小超过了form表单MAX_FILE_SIZE选 项指定的值!"; case 3: return "附近只有部分被上传!"; case 4: return "没有选择上传附件!"; } } ?> /***************************************************** *******************/ /***************************************************** *******************/ 目录 /register/index.html 重点 (上传文件表单必须设置 enctype="multipart/form- data") <html> <meta charset="utf-8"> <h2>用户注册系统</h2> <hr/> <form action="register.php" method="post" enctype="multipart/form-data"> 用户名: <input type="text" name="userName" size="20" maxlength="15" value="必须填写用户>名"/> @ <select name="domain"> <option value="@163.com" selected>163.com</option> <option value="@126.com">126.com</option> </select> <br/> 登陆密码: <input type="password" name="password" size="20" maxlength="15"/> <br/> 确认密码: <input type="password" name="confirmPassword" size="20" maxlength="15"/> <br/> 选择性别: <input name="sex" type="radio" value="male" checked /> 男 <input name="sex" type="radio" value="female" />女 <br/> 个人爱好: <input name="interests[]" type="checkbox" value="music" checked />音乐 <input name="interests[]" type="checkbox" value="game" />游戏 <input name="interests[]" type="checkbox" value="film" />电影 <br/> 个人相片: <input type="hidden" name="MAX_FILE_SIZE" value="20001024" /> <input type="file" name="myPicture" size="25" maxlength="100"/> <br/> 备注信息: <textarea name="remark" cols="30" rows="4">请填写备注 信息</textarea> <br/> <input type="submit" name="submit" value="注册按钮" /> <input type="reset" name="cancel" value="重新填写"/> </form> </html> /***************************************************** *******************/ /***************************************************** *******************/ 目录 /register/register.php <html> <meta charset="utf-8"> <? //$_FILES['myFile']['name'] 客户端文件的原名称 /*$_FILES['myFile']['tmp_name'] 文件被上传后在服务 端储存的临时文件名,一般 是系统默认,可以在php.ini的upload_tmp_dir指定,但用 putenv() 函数设置是不起作用 的*/ include_once("functions/fileSystem.php"); include_once("functions/database.php"); if(empty($_POST)){ exit("您提交的表单数据超过post_max_size的配置! <br/>"); } $password=$_POST['password']; $confirmPassword=$_POST['confirmPassword']; if($password!=$confirmPassword){ exit("输入的密码和确认密码不相等"); } $userName=$_POST['userName']; $domain=$_POST['domain']; $userName=$userName.$domain; //判断用户名是否占用 $userNameSQL="select * from users where userName='$userName'"; getConnection(); $resultSet=mysql_query($userNameSQL); if(mysql_num_rows($resultSet)>0){ closeConnection(); exit("用户名已经被占用,请更换其他用户名!"); } //收集用户其他信息 $sex=$_POST['sex']; if(empty($_POST['interests'])){ $interests=""; }else{ $interests=implode(";",$_POST['interests']); } $remark =$_POST['remark']; $myPictureName=$_FILES['myPicture']['name']; //获得 文件名 //只有上传成功或没有上附件才进行注册 $registerSQL="insert into users values (null,'$userName','$password','$sex', '$interests','$myPictureName','$remark')"; echo $registerSQL."<br/>"; $message =upload($_FILES['myPicture'],"uploads"); if($message=="文件上传成功!"||$message=="没有选择上传附 件!"){ mysql_query($registerSQL); $userID=mysql_insert_id(); echo "用户信息成功哦给你注册!<br/>"; }else{ exit($message); } //从数据库中提取用户注册信息 $userSQL="select * from users where user_id=$userID"; $userResult=mysql_query($userSQL); if($user=mysql_fetch_array($userResult)){ echo "您注册的用户名为:".$user["userName"]; }else{ echo "用户信息注册失败"; } closeConnection(); ?> </html> /***************************************************** *******************/
相关文章推荐
- PHP基本语法
- PHP基础
- php中die(),exit(),return的区别比较
- PHP第一节课
- php通过curl post和get发送json数据实例 curl命令转为php源码
- php设计模式之装饰模式
- php数组原样输出,带下标
- getpid()函数
- Laravel的三种安装方法总结
- 夺命雷公狗ThinkPHP项目之----企业网站11之栏目的删除完成
- 夺命雷公狗ThinkPHP项目之----企业网站10之栏目的编辑完善(无限极分类的完成)
- PHP7之匿名类
- PHPstorm创建注释模版
- PHP安装xdebug调试
- php 注释
- 完美扫描PHP特殊一句话后门
- Dubbo部署报创建productionModeSensiblePostProcessor异常处理
- yii2集成富文本编辑器redactor
- Laravel5学生成绩管理系统-02-Blade模板
- Laravel5学生成绩管理系统-03-登陆登出功能-权限-中间件