对php的一些小白的问题(捂脸)

Lawlirt 2018-10-31 09:43:17
$error = array(); //保存错误信息 这里的错误信息是一个自己定义的变量吗?这里是保存到叫做array的数组里吗?
...全文
356 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lawlirt 2018-12-09
  • 打赏
  • 举报
回复
login.php <?php header('Content-Type:text/html;charset=utf-8'); $error = array(); //保存错误信息 //当有表单提交时 if(!empty($_POST)){ //接收用户登录表单 $username = isset($_POST['username']) ? trim($_POST['username']) : ''; $password = isset($_POST['password']) ? $_POST['password'] : ''; //载入表单验证函数库,验证用户名和密码格式 // require 'check_form.lib.php'; // if(($result = checkUsername($username)) !== true) $error[] = $result; // if(($result = checkPassword($password)) !== true) $error[] = $result; //表单验证通过,再到数据库中验证 if(empty($error)){ $link = mysqli_connect('localhost','root','root','php'); //判断数据库连接是否成功,如果不成功则显示错误信息并终止脚本继续执行 if(!$link) { die('连接数据库失败!'.mysqli_connect_error()); } mysqli_query($link,'set names utf8'); // echo'连接成功!'; //SQL转义 $username = mysqli_real_escape_string($link,$username); //根据用户名取出用户信息 $sql = "select id,password from user where username='$username'"; if($rst = mysqli_query($link,$sql)){ //执行SQL,获得结果集 $row = mysqli_fetch_assoc($rst); //处理结果集 //计算密码的MD5 $password = md5($password); //判断密码是否正确 if($password == $row['password']){ //欢迎登录! //登录成功,保存用户会话 session_start(); $_SESSION['userinfo'] = array( 'id' => $row['id'], //将用户id保存到SESSION 'username' => $username //将用户名保存到SESSION ); //登录成功,跳转到会员中心 // header('Location: index.php'); require './user.php'; //终止脚本继续执行 die; } } $error[] = '用户名不存在或密码错误。'; } } //加载HTML模板文件 define('APP','php'); require 'login_html.php'; login_html.php <?php if(!defined('APP')) die('error!'); ?> <!doctype html> <html> <head> <meta charset="utf-8"> <title>欢迎登录</title> <style> body{background-color:#eee;margin:0;padding:0;} #container {margin: 0 auto; width:500px;} .reg{width:400px;margin:15px;padding:20px;border:1px solid #ccc;background-color:#fff;} .reg .title{text-align:center;padding-bottom:10px;} .reg th{font-weight:normal;text-align:right;} .reg input{width:180px;border:1px solid #ccc;height:20px;padding-left:4px;} .reg .button{background-color:#0099ff;border:1px solid #0099ff;color:#fff;width:80px;height:25px;margin:0 5px;cursor:pointer;} .reg .td-btn{text-align:center;padding-top:10px;} .error-box{width:378px;margin:15px;padding:10px;background:#FFF0F2;border:1px dotted #ff0099;font-size:14px;color:#ff0000;} .error-box ul{margin:10px;padding-left:25px;} </style> </head> <body> <form method="post"> <table class="reg"> <tr><td class="title" colspan="2">欢迎登录</td></tr> <tr><th>用户名:</th><td><input type="text" name="username" /></td></tr> <tr><th>密码:</th><td><input type="password" name="password" /></td></tr> <tr><td colspan="2" class="td-btn"> <input type="submit" value="登录" class="button" /> <input type="reset" value="重新填写" class="button" /> </td></tr> </table> </form> <?php if(!empty($error)): ?> <div class="error-box">登录失败,错误信息如下: <ul><?php foreach($error as $v) echo "<li>$v</li>"; ?></ul> </div> <?php endIf; ?> </body> </html> user.php <?php header('Content-Type:text/html;charset=utf-8'); //启动SESSION session_start(); //用户退出 if(isset($_GET['action']) && $_GET['action']=='logout'){ //清除SESSION数据 unset($_SESSION['userinfo']); //如果SESSION中没有其他数据,则销毁SESSION if(empty($_SESSION)){ session_destroy(); } //跳转到登录页面 header('Location: login.php'); //终止脚本 die; } //判断SESSION中是否存在用户信息 if(isset($_SESSION['userinfo'])){ //用户信息存在,说明用户已经登录 $login = true; //保存用户登录状态 $userinfo = $_SESSION['userinfo']; //获取用户信息 }else{ //用户信息不存在,说明用户没有登录 $login = false; } //加载HTML模板文件 define('APP','php'); require 'user_html.php'; user_html.php <?php if(!defined('APP')) die('error!'); ?> <!doctype html> <html> <head> <meta charset="utf-8"> <title>会员中心</title> <style> body{background-color:#eee;margin:0;padding:0;} .box{width:400px;margin:15px;padding:20px;border:1px solid #ccc;background-color:#fff;} .error-box{text-align:center;margin:15px;padding:10px;background:#FFF0F2;border:1px dotted #ff0099;font-size:14px;color:#ff0000;} .error-box a{color:#0066ff;} .box .title{font-size:20px;text-align:center;margin-bottom:20px;} .box .welcome{text-align:center;} .box .welcome a{color:#0066ff;} .box .welcome span{color:#ff0000;} </style> </head> <body> <div class="box"> <div class="title">会员中心</div> <?php if($login): ?> <div class="welcome">“<span><?php echo $userinfo['username']; ?></span>”您好,欢迎来到会员中心。<a href="?action=logout">退出</a></div> <!-- 此处编写会员中心其他内容 --> <?php else: ?> <div class="error-box">您还未登录,请先 <a href="login.php">登录</a> 或 <a href="register.php">注册新用户</a> 。</div> <?php endIf; ?> </div> </body> </html> user.php无法保存登录状态,可咋办
qq_42220172 2018-11-26
  • 打赏
  • 举报
回复
你这个就是一个变量,让一个空的数组等于了他、打印这个变量什么都不会有的。
田德利 2018-11-26
  • 打赏
  • 举报
回复
$res=array();
$res['a']='124235';

echo json_encode($res);
Lawlirt 2018-11-21
  • 打赏
  • 举报
回复
引用 13 楼 Lawlirt的回复:
没有执行测试错误。要么是发生了致命的事件,要么是突然停止了,要么是脚本的执行被停止了.
<?php //声明文件解析的编码格式 header('content-type:text/html;charset=utf-8'); require './public_function.php'; //初始化数据库 dbInit(); //准备SQL语句 $sql = 'select * from emp_info'; //定义员工数组,用以保存员工信息,执行SQL语句,获取结果集 //$emp_info = fetchAll($sql); $emp_info=array(); while ($row = mysqli_fetch_assoc($result)){ $emp_info[] = $row; } //设置常量,用以判断视图页面是否由此页面加载 define('APP', 'php'); //加载视图页面,显示数据 require './list_html.php';
Lawlirt 2018-11-21
  • 打赏
  • 举报
回复
没有执行测试错误。要么是发生了致命的事件,要么是突然停止了,要么是脚本的执行被停止了.
Lawlirt 2018-11-21
  • 打赏
  • 举报
回复
<?php /** * 初始化数据库连接 */ function dbInit(){ $link = mysqli_connect('localhost','root','root','php'); //判断数据库连接是否成功,如果不成功则显示错误信息并终止脚本继续执行 if(!$link){ die('连接数据库失败!'.mysqli_error()); } //设置字符集,选择数据库 mysqli_query('set names utf8',$link); mysqli_query('use php',$link); } /** * 执行SQL的方法 * @param string $sql 待执行的SQL * @return mixed 失败返回false,成功,如果是查询语句返回结果集,如果非查询类返回true */ function query($sql) { $link = mysqli_connect('localhost','root','root','php'); if ($result = mysqli_query($sql,$link)) { //括号内的参数写反了 //执行成功 return $result; } else { //设定失败 echo 'SQL执行失败:<br>'; echo '错误的SQL为:', $sql, '<br>'; echo '错误的代码为:', mysqli_errno(), '<br>'; echo '错误的信息为:', mysqli_error(), '<br>'; die; } } /** * 处理结果集中有多条数据的方法 * @param string $sql 待执行的SQL * @return array 返回遍历结果集后的二维数组 */ function fetchAll($sql) { $link = mysqli_connect('localhost','root','root','php'); //执行query()函数 if ($result = query($sql,$link)) { //执行成功 //遍历结果集 $rows = array(); while( $row = mysqli_fetch_array($result, MYSQLI_ASSOC)) { $rows[] = $row; } //释放结果集资源 mysqli_free_result($result); return $rows; } else { //执行失败 return false; } } /** * 处理结果集中只有一条数据的方法 * @param string $sql 待执行的SQL语句 * @return array 返回结果集处理后的一维数组 */ function fetchRow($sql) { $link = mysqli_connect('localhost','root','root','php'); //执行query()函数 if ($result = query($sql,$link)) { //从结果集取得一次数据即可 $row = mysqli_fetch_array($result, MYSQLI_ASSOC); return $row; } else { return false; } } /** * 对数据进行安全处理 * @param string $data 待转义字符串 * @return string 转义后的字符串 */ function safeHandle($data){ //转义字符串中的HTML标签 $data = htmlspecialchars($data); //转义字符串中的特殊字符 $data = mysqli_real_escape_string($data); return $data; } 我搜索了一下mysqli_query($sql,$link);的参数都是这样写的,但是按照楼上说的在另外一个程序把参数的顺序给调换过来确实是能连接上了。
下雨的声音丶 2018-11-14
  • 打赏
  • 举报
回复
引用 10 楼 Lawliet_Wang 的回复:
[quote=引用 8 楼 下雨的声音丶的回复:][quote=引用 7 楼 Lawliet_Wang 的回复:] <?php header('content-type:text/html;charset=utf-8'); //获取数据库连接并选择数据库 $link = mysqli_connect('localhost','user','password','php'); //判断数据库连接是否成功,如果不成功则显示错误信息并终止脚本继续执行 if(!$link) { die('连接数据库失败!'.mysqli_connect_error()); } else { echo '成功!'; } mysqli_query($link,'set names utf8'); //准备SQL语句 $sql = 'select * from emp_info'; $result = mysqli_query($sql, $link); //定义员工数组,用以保存员工信息,执行SQL语句,获取结果集 //$emp_info = fetchAll($sql); $emp_info=array(); while ($row = mysqli_fetch_assoc($result)){ $emp_info[] = $row; } //设置常量,用以判断视图页面是否由此页面加载 echo '成功!'; define('APP', 'php'); //加载视图页面,显示数据 require './list_htmll.php'; ?> 连接数据库成功但是没有获取数据库表格中的信息怎么办?
$result = mysqli_query($sql, $link);这里[/quote] 是我符号打少了吗?[/quote]参数写反了
Lawlirt 2018-11-14
  • 打赏
  • 举报
回复
引用 8 楼 下雨的声音丶的回复:
[quote=引用 7 楼 Lawliet_Wang 的回复:] <?php header('content-type:text/html;charset=utf-8'); //获取数据库连接并选择数据库 $link = mysqli_connect('localhost','user','password','php'); //判断数据库连接是否成功,如果不成功则显示错误信息并终止脚本继续执行 if(!$link) { die('连接数据库失败!'.mysqli_connect_error()); } else { echo '成功!'; } mysqli_query($link,'set names utf8'); //准备SQL语句 $sql = 'select * from emp_info'; $result = mysqli_query($sql, $link); //定义员工数组,用以保存员工信息,执行SQL语句,获取结果集 //$emp_info = fetchAll($sql); $emp_info=array(); while ($row = mysqli_fetch_assoc($result)){ $emp_info[] = $row; } //设置常量,用以判断视图页面是否由此页面加载 echo '成功!'; define('APP', 'php'); //加载视图页面,显示数据 require './list_htmll.php'; ?> 连接数据库成功但是没有获取数据库表格中的信息怎么办?
$result = mysqli_query($sql, $link);这里[/quote] 是我符号打少了吗?
Lawlirt 2018-11-14
  • 打赏
  • 举报
回复
是我符号打少了吗?
下雨的声音丶 2018-11-14
  • 打赏
  • 举报
回复
引用 7 楼 Lawliet_Wang 的回复:
<?php header('content-type:text/html;charset=utf-8'); //获取数据库连接并选择数据库 $link = mysqli_connect('localhost','user','password','php'); //判断数据库连接是否成功,如果不成功则显示错误信息并终止脚本继续执行 if(!$link) { die('连接数据库失败!'.mysqli_connect_error()); } else { echo '成功!'; } mysqli_query($link,'set names utf8'); //准备SQL语句 $sql = 'select * from emp_info'; $result = mysqli_query($sql, $link); //定义员工数组,用以保存员工信息,执行SQL语句,获取结果集 //$emp_info = fetchAll($sql); $emp_info=array(); while ($row = mysqli_fetch_assoc($result)){ $emp_info[] = $row; } //设置常量,用以判断视图页面是否由此页面加载 echo '成功!'; define('APP', 'php'); //加载视图页面,显示数据 require './list_htmll.php'; ?> 连接数据库成功但是没有获取数据库表格中的信息怎么办?
$result = mysqli_query($sql, $link);这里
Lawlirt 2018-11-14
  • 打赏
  • 举报
回复
<?php
header('content-type:text/html;charset=utf-8');
//获取数据库连接并选择数据库

$link = mysqli_connect('localhost','user','password','php');
//判断数据库连接是否成功,如果不成功则显示错误信息并终止脚本继续执行
if(!$link)
{
die('连接数据库失败!'.mysqli_connect_error());
}
else {
echo '成功!';
}
mysqli_query($link,'set names utf8');

//准备SQL语句
$sql = 'select * from emp_info';
$result = mysqli_query($sql, $link);
//定义员工数组,用以保存员工信息,执行SQL语句,获取结果集

//$emp_info = fetchAll($sql);

$emp_info=array();
while ($row = mysqli_fetch_assoc($result)){
$emp_info[] = $row;
}
//设置常量,用以判断视图页面是否由此页面加载
echo '成功!';
define('APP', 'php');
//加载视图页面,显示数据
require './list_htmll.php';
?>




连接数据库成功但是没有获取数据库表格中的信息怎么办?
sinat_35033848 2018-11-03
  • 打赏
  • 举报
回复
看前台错误提示,然后在PHP里遍历一遍文件能找到错误的提示在哪个语句
Lawlirt 2018-10-31
  • 打赏
  • 举报
回复
好吧,是我函数没打对。。。。 mysqli_query($link,'set names utf8'); mysqli_query($link,'use php') or die('php数据库不存在!');
Lawlirt 2018-10-31
  • 打赏
  • 举报
回复
完全一脸懵逼,这是啥情况?
Lawlirt 2018-10-31
  • 打赏
  • 举报
回复
引用 2 楼 下雨的声音丶的回复:
你这里只是定义了一个$error 的变量,并且赋值为空数组
是的(继续捂脸。。)
下雨的声音丶 2018-10-31
  • 打赏
  • 举报
回复
你这里只是定义了一个$error 的变量,并且赋值为空数组
Lawlirt 2018-10-31
  • 打赏
  • 举报
回复
我果然是什么都不懂的渣渣。。。。定义一个名为error的数组,以方便后面将错误信息复制进去

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧