Остановить вставку после достижения предела в PHP и SQL

У меня есть таблица с именем books, в этой таблице будут храниться данные каждой книги. в каждой книге всего 5 страниц, и каждая страница имеет разные детали, принадлежащие одной и той же книге. название книги, хранящееся в столбце с именем «jalad», и страницы, хранящиеся в столбце с именем «sanad»

Я хочу, чтобы PHP позволял мне вставлять новую книгу после полного завершения вставки первой книги, которая состоит из пяти страниц, и в случае, если я ввел менее 5 страниц, я не смогу вставить новую книгу до завершения первой. Любая идея, пожалуйста. Я использовал этот код, но он не работает идеально. Пожалуйста, помогите.

таблица здесь:

Код:

<?php
// connect to the database
// $serverName = "SALARY_SERVER\SALARY_SERVER";   
//$database = "roatb";  
$serverName = "LENOVO";   
$database = "tt";  
$connectionInfo = array( "Database"=>$database );  
$conn = sqlsrv_connect( $serverName, $connectionInfo);  
if ( $conn )  
{  
    echo "Connection established.\n";  
}  
else  
{  
    echo "Connection could not be established.\n";  
    die( print_r( sqlsrv_errors(), true));  
}

$jalad1 = $_POST['jalad'];
$sanad2 = $_POST['sanad'];

$sql = "SELECT count(Sanad) as countnumber FROM books where Jalad='$jalad1' ";
    
$stmt = sqlsrv_query( $conn, $sql );

while($row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC)) {           
    $rowc= $row['countnumber'];
    echo $rowc;

    if ($rowc <=5) {
        $sql = "INSERT INTO books (Jalad,Sanad) 
        VALUES ('$jalad1','$sanad2' )";
        //  echo  $sql;
   
        if (sqlsrv_query($conn, $sql)) {
            echo "your data saved";
        }
        else {echo "error";}        
    }
    else {
        echo"you have to complete the page of the current book";
    }
}
?>

В соответствии с руководством по вопросам, пожалуйста, не публикуйте изображения кода, данных, сообщений об ошибках и т. д. - скопируйте или введите текст в вопрос. Пожалуйста, зарезервируйте использование изображений для диаграмм или демонстрации ошибок рендеринга, вещей, которые невозможно точно описать с помощью текста.

Dale K 19.03.2022 09:50
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
2
38
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам нужно выбрать «jalad» последней загруженной книги. вы можете делать это, как хотите, но допустим, вы сохраняете значение столбца в переменной с именем $jalad_last

вам просто нужно сделать такое заявление if

if ($rowc == 0 || $rowc < 5 && $jalad1 == $jalad_last) {

    YOUR INSERT CODE HERE

} elseif ($rowc == 5) {

    echo 'this book is already completed';

} else {

    echo 'you have to complete...';

}

Другие вопросы по теме