PHP Выбор из таблицы 1 и вставка в таблицу 2 с идентификатором возврата будет 0 в таблице 2 - PullRequest
0 голосов
/ 11 мая 2019

сначала прости за мой английский. У меня проблема на моем isset Вот коды:

PHP:

if(isset($_POST['insert'])) {
    $insert = $_POST['insert'];
} 
{
    require('./clanconfig.php');

    $cln = $_POST['clanname'];
    $cms = $_POST['mesa'];

    $checkup    = "SELECT id FROM clan WHERE cname='$cln'";
    $upsql = mysqli_query($conn, $checkup);

    while($srcclan=mysqli_fetch_array($upsql) )
    {
        $checked = $srcclan['id'];
    }

    $sql2 = "INSERT INTO clanrequest (clanid, plname, message, playerid) VALUES('$cln', '$uname', '$cms', '$player_id')";       
    $sql3 = mysqli_query($conn, $sql2) or die();
}
mysqli_close($conn);

Проблема в том, что при поиске в таблице 1 со значением Post все нормально, но при вставке в таблицу 2 с идентификатором таблицы 1 и при добавлении в таблицу 2, но значение равно только 0 в столбце идентификатора

Html:

<form class="clan-form-join action="clanjoin.php" method="post">
<?php
require('./clanconfig.php');

$sql = "SELECT * FROM clan";
$sql2 = mysqli_query($conn, $sql);

echo "<html>";
echo "<body>";
echo "<select name='clanname'>";

while($sonuct=mysqli_fetch_array($sql2) )
{
    $cnamer = $sonuct['cname'];
    echo '<option value=" '.$cnamer.'">'.$cnamer.'</option><br />';
}
echo "</select>";
echo "</body>";
echo "</html><br>";
echo'<b>Message</b><br><textarea name="mesa" rows=3 cols=40></textarea><br/>';
echo'<input type="submit" name="insert" class="clanbutton" value=" Send Application ">';
?>
</form>

Вот html-коды, я выбираю детали клана в таблице кланов, и когда участник выбирает имя клана и вставляет кнопку, коды, отправленные с именем клана, выбираются как тестовый клан в значении isset, а в isset выбирают id клана, выбранного по значению опции, имя клана в таблице клана и возвращение для вставки запроса клана с именем, идентификатором игрока и идентификатором клана. Проблема заключается в том, что идентификатор клана автоматически добавляет 0 без добавления реального идентификатора клана

1 Ответ

0 голосов
/ 11 мая 2019

Весь код для вставки должен быть внутри if (isset($_POST['insert'])).У вас есть только присвоение переменной (и вы даже не используете эту переменную), у вас есть оставшаяся часть кода в отдельном блоке (нет цели помещать его в блок).

if(isset($_POST['insert'])) {
    $insert = $_POST['insert'];
    require('./clanconfig.php');

    $cln = $_POST['clanname'];
    $cms = $_POST['mesa'];

    $checkup    = "SELECT id FROM clan WHERE cname='$cln'";
    $upsql = mysqli_query($conn, $checkup);

    while($srcclan=mysqli_fetch_array($upsql) )
    {
        $checked = $srcclan['id'];
    }

    $sql2 = "INSERT INTO clanrequest (clanid, plname, message, playerid) VALUES('$cln', '$uname', '$cms', '$player_id')";       
    $sql3 = mysqli_query($conn, $sql2) or die();
    mysqli_close($conn);
}
...