Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将数据库值存储到变量中_Php_Mysql_Sql - Fatal编程技术网

Php 将数据库值存储到变量中

Php 将数据库值存储到变量中,php,mysql,sql,Php,Mysql,Sql,“我的表”类别有以下列: idcategory categorySubject users_idusers 获取和存储categoryid的最佳方式是什么 if($_SERVER['REQUEST_METHOD'] != 'POST') //show form if not posted { $sql = "SELECT * FROM category;"; $result = mysqli_query($conn,$sql);

“我的表”类别有以下列:

idcategory categorySubject users_idusers 获取和存储categoryid的最佳方式是什么

 if($_SERVER['REQUEST_METHOD'] != 'POST') //show form if not posted
    {   

        $sql = "SELECT * FROM category;";

     $result = mysqli_query($conn,$sql);

         ?>
    <form method="post" action="createTopic.php">
        Choose a category:
        </br>
        </br>

        <?php 
        while ($row = mysqli_fetch_assoc($result)) {
            echo "<div class= 'choice'><input type='radio' name='category' value='". $row['idcategory'] . "'>" . $row['categorySubject'] ."</div></br>";

        }

               echo 'Topic: <input type="text" name="topic" minlength="3" required>
             </br></br>
             <input type="submit" value="Add Topic" required>
             </form>';

            }


   if ($_POST){
       if(!isset($_SESSION['signedIn']) && $_SESSION['signedIn'] == false)
{

    echo 'You must be signed in to contribute';
}
       else{
         $sql="INSERT INTO topic(subject, topicDate, users_idusers, category_idcategory, category_users_idusers) VALUES('($_POST[topic])', '$date', '$_SESSION[userid]', '$getCatId', '$_SESSION[userid]');"; 

            $result = mysqli_query($conn,$sql);
            echo "Added!";
if($\u服务器['REQUEST\u方法]!='POST')//如果未发布则显示表单
{   
$sql=“从类别中选择*”;
$result=mysqli\u查询($conn,$sql);
?>
选择一个类别:



如果我正确理解了这个问题,您的
$getCatId
(类别id)将出现在
$\u POST['category']
(发送表单后)您的情况下

如果我正确理解了这个问题,您的
$getCatId
(类别id)将出现在
$\u POST['category']
(发送表单后)在您的情况下

您应该做的第一件事是在old来拜访您之前,通过参数化您的查询来保护自己

您也可以像我在下面演示的那样研究使用,因为它是一个一致的API,可以与许多不同的数据库管理系统一起工作,因此这为您带来了非常好的可移植代码


选择一个类别:



你应该做的第一件事是在old来拜访你之前,通过参数化你的查询来保护你自己

您也可以像我在下面演示的那样研究使用,因为它是一个一致的API,可以与许多不同的数据库管理系统一起工作,因此这为您带来了非常好的可移植代码


选择一个类别:



是的,在按下submit按钮后,用户从数据库中的单选按钮中进行选择。我不知道这是否重要,但我已经有一个查询了。我不确定是否可以在同一部分中放置另一个。是的,在按下submit按钮后,用户从单选按钮中进行选择不是来自数据库。我不知道这是否重要,我把代码放在哪里,但我已经有一个查询了。我不确定是否可以在同一部分中放另一个。警告:当使用
mysqli
时,您应该使用and将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为e您创建了一个严重的错误。切勿将
$\u POST
$\u GET
数据直接放入查询中,如果有人试图利用您的错误,这可能非常有害。警告:使用
mysqli
时,您应该使用并将用户数据添加到查询中。不要使用字符串插值或串联来完成此操作,因为您已经创建了一个严重的错误。请不要将
$\u POST
$\u GET
数据直接放入查询,如果有人试图利用您的错误,这可能会非常有害。
 if($_SERVER['REQUEST_METHOD'] != 'POST') //show form if not posted
    {   

        $sql = "SELECT * FROM category;";

     $result = mysqli_query($conn,$sql);

         ?>
    <form method="post" action="createTopic.php">
        Choose a category:
        </br>
        </br>

        <?php 
        while ($row = mysqli_fetch_assoc($result)) {
            echo "<div class= 'choice'><input type='radio' name='category' value='". $row['idcategory'] . "'>" . $row['categorySubject'] ."</div></br>";

        }

               echo 'Topic: <input type="text" name="topic" minlength="3" required>
             </br></br>
             <input type="submit" value="Add Topic" required>
             </form>';

            }


   if ($_POST){
       if(!isset($_SESSION['signedIn']) && $_SESSION['signedIn'] == false)
{

    echo 'You must be signed in to contribute';
}
       else{
         $sql="INSERT INTO topic(subject, topicDate, users_idusers, category_idcategory, category_users_idusers) VALUES('($_POST[topic])', '$date', '$_SESSION[userid]', '$getCatId', '$_SESSION[userid]');"; 

            $result = mysqli_query($conn,$sql);
            echo "Added!";
<?php

// returns an intance of PDO
// https://github.com/jpuck/qdbp
$pdo = require __DIR__.'/mei_DV59j8_A.pdo.php';

// dummy signin
session_start();
$_SESSION['signedIn'] = true;
$_SESSION['userid'] = 42;

//show form if not posted
if($_SERVER['REQUEST_METHOD'] != 'POST'){

    $sql = "SELECT * FROM category;";

    // run query
    $result = $pdo->query($sql);

    ?>

    <form method="post" action="createTopic.php">
    Choose a category:
    </br>
    </br>

    <?php
    // get results
    while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
        echo "
            <div class= 'choice'>
                <input type='radio' name='category' value='$row[idcategory]'/>
                $row[categorySubject]
            </div>
            </br>
        ";
    }

    echo '
        Topic: <input type="text" name="topic" minlength="3" required>
        </br></br>
        <input type="submit" value="Add Topic" required>
    </form>
    ';

}


if ($_POST){
    if(!isset($_SESSION['signedIn']) && $_SESSION['signedIn'] == false){
        echo 'You must be signed in to contribute';
    } else {
        // simulate your date input
        $date = date("Y-m-d");

        // bind parameters
        $sql = "
            INSERT INTO topic (
                subject,   topicDate,  users_idusers,  category_idcategory,  category_users_idusers
            ) VALUES(
                :subject, :topicDate, :users_idusers, :category_idcategory, :category_users_idusers
            );
        ";

        // prepare and execute
        $statement = $pdo->prepare($sql);
        $statement->execute([
            'subject' => "($_POST[topic])",
            'topicDate' => $date,
            'users_idusers' => $_SESSION['userid'],
            // to answer your question, here's your variable
            'category_idcategory' => $_POST['category'],
            'category_users_idusers' => $_SESSION['userid'],
        ]);

        echo "Added!";
    }
}