【问题标题】:Post data to table: all data in table shows as 1将数据发布到表中:表中所有数据显示为 1
【发布时间】:2015-04-22 10:39:45
【问题描述】:

当 postdata 被传递时,我在我的服务器上运行下面的脚本,数据库中的所有字段都包含数字 1,而不是我需要的数据

<?php
$servername = "localhost";
$username = "tadmin_admin";
$password = "Revolution1990#";
$dbname = "tadmin_datalord";

$db = new PDO( 'mysql:host=webpag.cu.cc;dbname=tadmin_datalord', $username, $password );

$ip = isset($_POST['ipaddress']);
$ip =strip_tags($ip);
$useragent = $_SERVER['HTTP_USER_AGENT'];
$useragent =strip_tags($useragent);
$username = isset($_POST['fpuser1']);
$username =strip_tags($username);
$email = isset($_POST['fpuser2']);
$email =strip_tags($email);
$password = isset($_POST['fpuser3']);
$password =strip_tags($password);
$passwordc = isset($_POST['fpuser4']);
$passwordc =strip_tags($passwordc);
$address = isset($_POST['address']);
$address =strip_tags($address);
$county = isset($_POST['county']);
$county =strip_tags($county);
$country = isset($_POST['country']);
$country =strip_tags($country);
$postcode = isset($_POST['postcode']);
$postcode =strip_tags($postcode);
$title = isset($_POST['title']);
$title =strip_tags($title);
$fname = isset($_POST['fname']);
$fname =strip_tags($fname);
$lname = isset($_POST['lname']);
$lname =strip_tags($lname);
$dob = isset($_POST['dob']);
$dob =strip_tags($dob);

$sql = "INSERT INTO liningdata ( userdata, ipaddress, username,email, password, passwordc , address, county, country, postcode, title,fname, lname, dob ) VALUES ( :useragent, :ip, :username, :email,:password, :passwordc, :address, :county,:country, :postcode, :title,:fname, :lname, :dob )";

$query = $db->prepare( $sql );
$query->execute( array( ':useragent'=>$useragent , ':ip'=>$ip ':username'=>$username , ':email'=>$email , ':password'=>$password':passwordc'=>$passwordc , ':address'=>$address ,':county'=>$county ,':country'=>$country , ':postcode'=>$postcode , ':title'=>$title ,':fname'=>$fname , ':lname'=>$lname , ':dob'=>$dob ) );

if ($query){
}
else{
} 
?> 

谁能帮我解决这个问题?我很困惑为什么我的表格在所有列中都只包含数字1

【问题讨论】:

    标签: php html mysql post pdo


    【解决方案1】:

    issetreturn 1,所以你必须改变:

    $ip = (isset($_POST['ipaddress']))?strip_tags($_POST['ipaddress']):'';
    $useragent = strip_tags($_SERVER['HTTP_USER_AGENT']);
    $username = (isset($_POST['fpuser1']))?strip_tags($_POST['fpuser1']):'';
    

    等等……

    【讨论】:

    • 我还有另一个问题,我使用脚本及其发布数据,但是当我再次使用脚本时,没有发布数据
    • ** 但是当我再次使用脚本时** 你是什么意思?你用表格重新访问那个页面吗?然后按提交按钮?
    • 是的,这正是我使用表单发布数据的方式,然后我再次使用表单,但没有发布数据,但第一个数据始终有效
    • 你的表结构声明是什么?什么是主键?什么是唯一键?尝试将ON DUPLICATE 添加到INSERT 查询
    • 我对 pdo 很陌生。我不明白结构减速,你能给我举个例子吗
    猜你喜欢
    • 2020-10-23
    • 1970-01-01
    • 2012-05-15
    • 1970-01-01
    • 1970-01-01
    • 2016-10-01
    • 2018-10-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多