【问题标题】:Why is the input not going to localhost?为什么输入不去本地主机?
【发布时间】:2020-09-16 17:28:09
【问题描述】:

这是我所有的代码

添加.php

<?php 
    
    include_once('config.php');


    if(isset($_POST['submit']))
    {
        $emri = $_POST['emri'];
        $mbiemri = $_POST['mbiemri'];
        $email = $_POST['email'];

        
        $sql = "INSERT INTO users(emri,mbiemri,email) VALUES (:emri,:mbiemri,:email)";

        $arti = $con->prepare($sql);

        $arti->bindParam(':emri', $emri);
        $arti->bindParam(':mbiemri', $mbiemri);
        $arti->bindParam(':email', $email);

        $arti->execute();

        header("Location: index.php"); 

    }

    
 ?>

 <a href="index.php">Home</a>

config.php

<?php 

$host = 'localhost';
$db = 'maj6a';
$user = 'root';
$pass = '';

    try 
    {
        $con = new PDO("mysql:host=$host; dbname=$db", $user, $pass);
    } catch (Exception $e) {
        echo "Diqka shkoi gabim!";
    }


 ?>
<?php 
    
    include_once('config.php');

    $sql = "SELECT * from users";

    $prep = $con->prepare($sql);

    $prep->execute();

    $datas = $prep->fetchAll();

    // var_dump($data);

?>


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>

    <style>
        table
        {
            border: 1px solid black;
            border-collapse: collapse;
        }
        th,td
        {
            border: 1px solid black;
            padding: 5px 10px;
        }
    </style>
</head>
<body>
    
<table>
    <thead>
        <th>ID</th>
        <th>Emri</th>
        <th>Mbiemri</th>
        <th>Email</th>
    </thead>

    <tbody>

        <?php 
        foreach ($datas as $data) {
        ?>

            <tr>
                <td><?= $data['id'] ?></td>
                <td><?= $data['emri'] ?></td>
                <td><?= $data['mbiemri'] ?></td>
                <td><?= $data['email'] ?></td>
            </tr>

        <?php 
        }
        ?>

    </tbody>
</table>


<a href="index.php">Home</a>
</body>
</html>

index.php


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>

    <form action="add.php" method="POST">
        
        <input type="text" name="emri" placeholder="Emri"><br>
        <input type="text" name="mbiemri" placeholder="Mbiemri"><br>
        <input type="email" name="email" placeholder="Email"><br>
        <br><br>
        <button type="submit" name="submit">Shto</button>
    </form>
    

    <a href="dashboard.php">Dashboard</a>
    

    
</body>
</html>

这真的很烦人。我想不出代码可能出错的原因,除非它是非常微不足道的东西,比如错误的“”或“”。它应该将数据添加到 SQL,然后从其他站点检索它们。如果有人可以帮助我,我将不胜感激。

【问题讨论】:

  • 现在是进行调试的时候了。这具体如何失败?表格是否张贴到add.php?用户是否被重定向到index.php? PHP 日志中是否有任何错误或警告? execute() fail 吗?您需要缩小问题范围。
  • @David 嘿。感谢回复。过去几周我一直在尝试,但老实说我不知道​​如何解决这个问题。这就是我发布此内容的原因。
  • 提交表单时实际会发生什么?
  • 启用错误PDO::ERRMODE_EXCEPTIONphp.net/manual/en/pdo.error-handling.php

标签: php mysql sql pdo


【解决方案1】:

我认为您必须为提交输入设置一个值

        <button type="submit" name="submit" value="sub">Shto</button>

【讨论】:

  • 我认为没有必要。如果您忽略该值,它会提交一个空字符串。 isset() 仍然会看到它。
猜你喜欢
  • 2014-02-16
  • 2014-11-09
  • 1970-01-01
  • 2014-05-06
  • 2011-08-26
  • 1970-01-01
  • 2011-11-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多