php数据回显是什么意思,关于mysql:php脚本回显部分php而不是什么意图
我在创建php脚本时遇到了麻烦,我已经创建了将实例插入数据库,但是我得到了一个简单的输出,我不知道如何解决它。 代码是:
try{
$user = 'root';
$pass = null;
$pdo = new PDO('mysql:host=localhost; dbname=divebay', $user, $pass);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$username = $_POST['username'];
$password = sha1($_POST['password']);
$location = %_POST['location'];
$email = $_POST['email'];
$name = $_POST['fname'] ."" . $_POST['surname'];
$check = $pdo->prepare('SELECT * FROM user WHERE username=?');
$check->bindValue(1, $username);
$check->execute();
if($check->fetch(PDO::FETCH_OBJ)){
echo"Account name already exists";
}
else{
$stmt = $pdo->prepare('INSERT INTO user(username, password, location, email, name)
VALUES(:username, :password, :location, :email, :name)');
$stmt->bindParam(':username', $username, PDO::PARAM_STR);
$stmt->bindParam(':password', $password, PDO::PARAM_STR);
$stmt->bindParam(':location', $location, PDO::PARAM_STR);
$stmt->bindParam(':email', $email, PDO::PARAM_STR);
$stmt->bindParam(':name', $name, PDO::PARAM_STR);
if($stmt->execute()){
echo"Account created";
}
else{
echo"Account could not be created";
}
}
$pdo = null;
}catch(PDOException $e){
echo $e->getMessage();
}
?>
我希望输出像"帐户创建"。 而输出我得到这个错误:
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $username =
$_POST['username']; $password = sha1($_POST['password']);
$location = %_POST['location']; $email = $_POST['email']; $name =
$_POST['fname'] ."" . $_POST['surname']; $check =
$pdo->prepare('SELECT * FROM user WHERE username=?');
$check->bindValue(1, $username); $check->execute();
if($check->fetch(PDO::FETCH_OBJ)){ echo"Account name already exists";
} else{ $stmt = $pdo->prepare('INSERT INTO user(username, password,
location, email, name) VALUES(:username, :password, :location, :email,
:name)'); $stmt->bindParam(':username', $username, PDO::PARAM_STR);
$stmt->bindParam(':password', $password, PDO::PARAM_STR);
$stmt->bindParam(':location', $location, PDO::PARAM_STR);
$stmt->bindParam(':email', $email, PDO::PARAM_STR);
$stmt->bindParam(':name', $name, PDO::PARAM_STR);
if($stmt->execute()){ echo"Account created"; } else{ echo"Account
could not be created"; } } $pdo = null; }catch(PDOException $e){ echo
$e->getMessage(); } ?>
这个脚本出错的原因是什么?
是否在您的服务器上启用了PHP?如果您访问仅包含的PHP文件会发生什么?
另外,请仔细阅读过去的问题并接受答案。您的接受率仅为14%且非常低。有些人可能因此没有给你答案。
生病了
@LiamWarnes Chewckif PDO是否启用
@David我认为它是phpinfo()给了我一堆显示版本信息等的表
上面的文件名为* .php?
@swapnesh我试图通过添加if(extension_loaded('pdo'){在try块之前使用else {echo"php未加载"来检查但是输出保持不变所以我假设php已启用?
在setAttribute之前你有一个贴身标签吗?喜欢$pdo-?>
@LiamWarnes和其他人只是为了一个查询是正确的??? $ pass = null;或者你想要$ pass =''; < - 表示空密码
看不出这会导致php代码被输出但是你好像在这里输入错误$location = %_POST['location'];而不是$
你得到输出的唯一方法是你写的:
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
如:
$pdo?>setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
因为失误。
或许,但代码块是直接从记事本++中复制的,所以情况并非如此
您在浏览器中看到的输出是您在上面看到的输出,还是原始字符串响应(例如,从视图源视图)?
在%_POST['location']上你有% INSTEAD OF $
建议:
另外,我强烈建议将PDO函数包装到类中。 以下是我在每个项目中亲自使用的内容:
将其保存到自己的文件中(例如:sql.class.php)
class SqlIt{
public $Sql;
public $Response;
private $Host;
private $DBname;
private $User;
private $Pass;
public $NumResults;
public function __construct($Sql, $type, $vars){
if($vars ==""){
$vars = array();
}
try{
$DB = $this->db_connect();
$DB->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$STH = $DB->prepare($Sql);
$doit = $STH->execute($vars);
$this->Result = $doit;
}
catch(PDOException $e){
echo $e->getMessage();
}
//find function to run
switch($type){
case 'select':
$this->select($STH);
break;
}
}
public function select($query){
$rows = $query->rowCount();
$this->NumResults = $rows;
while($row = $query->fetchObject()){
$this->Response[] = $row;
}
}
//create a separate function for connecting to DB. Private to only this class.
private function db_connect(){
$this->User = 'root';
$this->Pass = '';
$DBH = new PDO("mysql:host=localhost;dbname=divebaby", $this->User, $this->Pass);
return $DBH;
}
}
?>
然后,为了实际运行上面的语句,您只需输入以下代码:
$username = $_POST['username'];
$password = sha1($_POST['password']);
$location = $_POST['location'];
$email = $_POST['email'];
$name = $_POST['fname'] ."" . $_POST['surname'];
$getUser = new SqlIt("SELECT * FROM user WHERE username=?","select",array($username));
if($getUser){
echo 'Account name already exists';
}else{
$insertUser = new SqlIt("INSERT INTO user (username,password,location,email,name) VALUES (?,?,?,?,?)","insert",array($username,$password,$location,$email,$name));
if($insertUser){
echo 'Account created!';
}else{
echo 'Account not created.';
}
在您的一个页面的开头缺少,其中包含第一行setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);的代码
php数据回显是什么意思,关于mysql:php脚本回显部分php而不是什么意图相关推荐
- mysql binlog2sql闪回数据
利用binlog2sql快速闪回误删除数据 - 别拿豆包不当干粮 转原文地址: http://blog.51cto.com/sumongodb/2046073?cid=699139 各位兄弟们,好久不 ...
- mysql有闪回吗_MySQL的闪回策略
闪回原理 既然binlog以event形式记录了所有的变更信息,那么我们把需要回滚的event,从后往前回滚回去即可. 对于单个event的回滚,我们以表test.user来演示原理 mysql> ...
- mysql备份psd文件没有数据_两套mysql备份脚本
数据备份其重要性无需多言,再细想一步,我们至少需要两种备份:一种逻辑备份(mysqldump生成sql文件):一种物理备份(xtrabackup可很好完成).逻辑备份在出问题时能提供更细粒度的恢复和对 ...
- mysql 回表 覆盖索引_MySQL 的覆盖索引与回表的使用方法
两大类索引 使用的存储引擎:MySQL5.7 InnoDB 聚簇索引 * 如果表设置了主键,则主键就是聚簇索引 * 如果表没有主键,则会默认第一个NOT NULL,且唯一(UNIQUE)的列作为聚簇索 ...
- oracle闪回某个时间点的数据库,oracle11g 使用闪回查询恢复表到过去某一个时间点...
一.新建测试表并插入数据:oracle 二.模拟表数据误删并提交:测试 三.使用闪回查询来查误删前表的数据:(表误删是在15:08分左右误删,所以在15:08分以前表的数据仍是在的):spa 四.用如 ...
- mysql数据库索引回表_简述 MySQL 数据库的覆盖索引与回表
两大类索引 使用的存储引擎:MySQL5.7 InnoDB 聚簇索引 *如果表设置了主键,则主键就是聚簇索引 *如果表没有主键,则会默认第一个NOTNULL,且唯一(UNIQUE)的列作为聚簇索引 * ...
- mysql 如何把整列数据*10_10张图告诉你,MySQL 是如何查找数据的?
在我们日常生活中经常会涉及到查找某个东西的场景,就比如说在一个学校里吧,我们想找出个子"最高的10个"同学,或者想查找姓名是"张三"的同学,又或者是查找学号是& ...
- 大数据学习总结(2021版)---Mysql基础
这里写目录标题 第1章:数据库 1.1 数据库概述 1.2 数据库表 1.3 表数据 第2章:MySql数据库 2.1 MySql启动和停止 2.2 登录MySQL数据库 2.3 SQLyog(MyS ...
- Python-打印指定范围内的全部回文素数(高教社,《Python编程基础及应用》习题8-7) (10分) 回文素数是指一个数既是素数又是回文数,例如131既是素数又是回文数。
前言 PTA程序设计类教学平台-Python作业 题目: 回文素数是指一个数既是素数又是回文数,例如131既是素数又是回文数.请实现下述两个函数,帮助测试程序完成如下功能:从键盘输入正整数N, 打印从 ...
- Mysql数据恢复---闪回恢复
使用过商业数据库oracle都知道,oracle有一个闪回功能非常好用,可以非常迅速的找回删除的数据或者删除的表,这个功能在线上要谨慎使用,除非是万般无奈之下才去使用,在转向使用mysql时发现,官方 ...
最新文章
- 敏捷开发日常跟进系列之二:燃尽图(中)
- java开发企业级权限管理系统_Java开发企业级权限管理系统 视频教程
- Docker入门-搭建docker私有仓库
- 一个简单的Angular search UI实现
- 担当大任者的九大特征
- ckeditor java 上传_CKEditor粘贴图片自动上传到服务器(Java版)
- 查看、关闭SELinux
- mysql outfile 权限_MYSQL解决select ... into outfile '..' mysql写文件权限问题 Can't create/write to file...
- 《HarmonyOS开发 - 小凌派-RK2206开发笔记》第1章 开发环境搭建
- 电脑带不动虚幻引擎渲染卡顿怎么办?本文给你支招
- TP50 TP90 TP99 TP999 详细说明
- 科技日语写作 计算机科学专题,科技进步和人类日语作文
- python实现一个web服务器
- 【点云系列】 场景识别类导读
- newman跟newman-reporter-html安装
- 集合的简单实现(斗地主牌的实现 )
- Word、PPT、Visio里面怎么插入latex mathcal的数学字符?
- 在Ubuntu16.04.1上安装、配置、使用Nginx
- 聊聊从脑神经到神经网络
- 手机邮箱怎么弄_安卓手机邮箱设置教程 教您如何使用手机接收邮件
热门文章
- ETL、BI、MMP数据库
- (转)百度金融联合多方发布国内首单区块链证券化项目 发行规模超4亿
- Rust: ,clone,Box,Arc 的address
- 云原生时代,分布式系统设计必备知识图谱(内含22个知识点)
- 基于HBR的云上统一备份最佳实践
- Kafka从上手到实践 - Kafka集群:启动Kafka集群 | 凌云时刻
- LC3 正式升级 Open Source Summit,分论坛主题活动精彩纷呈
- 中铁总数据中心落户武清 项目总投资22.7亿元
- 【路径规划】基于matlab RRT算法求解机器人避障路径规划问题【含Matlab源码 319期】
- 【语音处理】基于matlab GUI语音时域频域频谱图分析【含Matlab源码 527期】