好吧,所以我有一个表单,我试图让它将数据提交到我的数据库,但它不起作用...我不确定是否是我的表单导致问题或如果它是一个问题连接到数据库?
我的表名是正确的,值字段,登录信息...但每当我点击提交它没有插入任何数据.
可能是我的表格有问题吗?你们介意看看吗?
<form action="form.php" method="POST">
<div class="row">
<div class="large-4 columns">
<span id="spryfirstname">
<input name="firstname" type="text" class="text" placeholder="First Name"/>
<span class="textfieldRequiredMsg">A value is required.</span></span></div>
<div class="large-4 columns">
<span id="sprylastname">
<input name="lastname" type="text" class="text" placeholder="Last Name"/>
<span class="textfieldRequiredMsg">A value is required.</span></span></div>
<div class="large-4 columns">
<div class="row collapse">
<div class="small-9 columns"><span id="spryemail">
<input name="email" type="text" placeholder="email@example.com"/>
<span class="textfieldRequiredMsg">A value is required.</span></span></div>
</div>
</div>
</div>
<div class="row">
<div class="large-12 columns">
<label>Check all Products that you're interested in</label>
<div>
<input name="products[]" type="checkbox" value="all">
ALL …Run Code Online (Sandbox Code Playgroud) 我正在研究数据库系统,我正在尝试避免重复的电子邮件和用户名条目.我已经尝试但它仍然拒绝,但无法确切地看到被拒绝的内容.谁能告诉我哪里错了?
if(isset($_POST['submit'])){
$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];
$sql="INSERT into users (username,password,email) VALUES('$username','$password','$email')";
$result = mysql_query("INSERT INTO users VALUES ('duplicate')");
if (!$result) {
echo "Enter a different value";
} else {
echo "Save successful.";
}
}
Run Code Online (Sandbox Code Playgroud) 我刚刚开始学习 php 和 mysql,并试图设置一切。为了尝试学习示例问题,我正在尝试通过登录 http://my-local-ip/phpmyadmin/ 来创建数据库。我可以使用安装期间使用的用户名和密码登录,但尝试使用 cretae 数据库我看到No Privileges.
我查看了可能的重复项,我尝试清除缓存/cookies 并输入flush 和用户命令sql,他们没有解决我的问题。
请注意,我不在同一台计算机上,我有一台单独的计算机,我正在通过 ssh-ing 进入(都是 ubuntu 16),并且我正在通过 ssh-ed 计算机的本地 IP 地址访问 web-phpMyAdmin .
我不知道如何解决这个问题。
我正在学习如何使用预处理语句,我想我会尝试使用password_hash()和password_verify()函数登录系统(简单).我已成功使用准备好的状态数据库插入数据,现在我希望验证密码并对用户执行某些操作.
我似乎在这个阶段收回了我的失败信息:
$stmt = $conn->prepare("SELECT username, password FROM users WHERE username = ?");
$stmt->bind_param('s', $username);
$username = $_POST['ulogin'];
$password = $_POST['upassword'];
$stmt->execute();
$stmt->bind_result($username, $password);
$row = $stmt->fetch();
if ($stmt->num_rows == 1) {
if (password_verify($password, $row['user_password'])) {
echo 'success';
}
} else {
echo "Wrong data";
}
$stmt->close();
$conn->close();
Run Code Online (Sandbox Code Playgroud)
如果我这样做var_dump($stmt->fetch());并且登录用户名是正确的,则返回为bool(true)
我不知道如何尝试验证密码.
我正在处理一个项目(已经开始),但我不知道它是否是用框架完成的,因为在许多不同的文件夹中有文件,但我没有看到任何引用我所知道的某个框架的语法。
我希望有一个人可以帮助我...
我正在构建一个基于 php 的登录系统,用户需要输入用户名和密码才能登录。我的问题是“如何在同一页面上显示“无效的用户名或密码”错误消息?我尝试了很多事情,包括尝试使用查询字符串 (/?error=1);它确实通过在同一页面上显示错误消息解决了我的问题,但是所有 CSS 都刚刚从页面上消失了,我找不到修复它的方法(虽然不是因为缺乏尝试)。所以我决定尝试一种更简单的方法,但显然行不通。那么,我该如何解决呢?这是我的 PHP 代码:
<?php
session_start();
$db = mysqli_connect("localhost","root","","combination");
if(isset($_POST['login_btn'])){
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);
$password=md5($password);
$sqlquery="SELECT * FROM registration WHERE username='$username' AND password='$password'";
$result = mysqli_query($db,$sqlquery);
if(mysqli_num_rows($result)==1){
$_SESSION['message']="You are now logged in.";
$_SESSION['username'] = $username;
$_SESSION['password'] = $password;
header("location:loginhome.php");
}
else{
$_SESSION['message']="Incorrect Username or Password.";
header("location:login.php");
echo '<h3>Invalid username or password</h3>';
}
}
?>
Run Code Online (Sandbox Code Playgroud) 我发现当我通过按Enter键提交表单时,页面刷新(因为我的表单没有指定操作),但如果我单击按钮,它将执行jQuery.
如何按Enter键同时执行jQuery?
这是我的代码:
<form id="signup-form">
<input type="text" id="text-input-splash" class="text-input" placeholder="Enter your email"><button type="button" id="submit-input-splash">Sign me up</button>
</form>
<p id="validation-message"></p>
<p>100% private and free. No spam. One-click unsubscribe.</p>
<script>
$(document).ready(function(){
$("#submit-input-splash").click(function() {
// import email variable
var email = $("#text-input-splash").val();
$.post("signup.php", {email: email}, function(data){
$("#validation-message").text(data).addClass("error-text");
});
});
});
</script>
Run Code Online (Sandbox Code Playgroud) 在注册/登录表单中,我们验证用户输入,如用户名和电子邮件,并确保它不包含任何特殊字符.我的问题是关于密码输入字段.是否可以使用密码输入字段注入sql查询?因为我们允许用户为其添加特殊字符.
我的数据库中有一个自定义时间戳字段, delivery_date
$table->timestamp('delivery_date')->nullable();
Run Code Online (Sandbox Code Playgroud)
每当我尝试使用此字段时,它都会将其作为字符串引入...
"2018-12-17 00:00:00"
Run Code Online (Sandbox Code Playgroud)
但是created_at,例如,如果我使用带有时间戳的相同代码,则会将其作为时间戳引入。
date: 2018-12-09 00:00:00.0 America/New_York (-05:00)
我曾试图改变迁移外地datetime,并date具有相同的结果。
我也尝试通过...转换结果
strtotime($order->delivery_date)
Run Code Online (Sandbox Code Playgroud)
但出于某种原因,它将其转换为整数。
我正在尝试检查电子邮件是否已在注册中使用.当我在学校里工作时它运作良好,但现在它突然显示错误:
致命错误:在null上调用成员函数prepare()
我用它来包括
define("dbserver", "localhost");
define("dbuser", "user");
define("dbpass", "");
define("dbname", "user");
$db = new PDO(
"mysql:host=" .dbserver. ";dbname=" .dbname,dbuser,
array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8",
PDO::MYSQL_ATTR_INIT_COMMAND => "SET CHARACTER SET utf8"
) );
Run Code Online (Sandbox Code Playgroud)
在这里
session_start();
include "DBjoin.php";
if(isset($_POST["email"])) {
$_SESSION['email'] = $_POST["email"];
}
if(isset($_POST["nick"])) {
$_SESSION['nick'] = $_POST["nick"];
}
if(isset($_POST["pass"])) {
$_SESSION['pass'] = $_POST["pass"];
$_SESSION['pass'] = base64_encode($_SESSION['pass']);
}
$sthandler = $db->prepare("SELECT Email FROM Registrace WHERE Email = :email");
$sthandler->bindParam(':email', $_SESSION['email']);
$sthandler->execute();
if(filter_var($_SESSION['email'], FILTER_VALIDATE_EMAIL)) {
if($sthandler->rowCount() > 0){
echo "Email is …Run Code Online (Sandbox Code Playgroud) php ×8
mysql ×5
database ×2
laravel ×2
duplicates ×1
forms ×1
html ×1
javascript ×1
jquery ×1
passwords ×1
pdo ×1
phpmyadmin ×1
sql ×1
timestamp ×1