Значение увеличивается на 2 вместо 1, также некоторые ошибки массива я не понимаю

Так что у меня есть эта проблема, которую я не могу понять. но проблема в том, что когда я нажимаю стрелку вправо на странице, значение должно увеличиваться на 1, а не на 2. и при нажатии на левую кнопку, оно должно идти -1, и это работает нормально.

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

Вот код, с которым я борюсь:

    // checks if the variable has not been set, otherwise errors and problems will occur
if (empty($_SESSION["huidigeklant"])) {setHuidigeKlant();}


// common variables set to use
$id[] = $_SESSION["id"];

// makes a pre connection to check if a value can be set up or down to prevent errors in the input page.
$result = mysqli_query($conn, "SELECT * from klanten"); // run the query and assign the result to $result
while ($row=mysqli_fetch_assoc($result)) {

array_push($id, $row["id"]);
}

// checks first and last array value of the session id
function checkfirstklant(){ $firstID = reset($id); return $firstID; }
function checklastklant(){ $lastID = end($id); return $lastID; }


// checks first if the right or left button has been pressed and checks after that if the value is already at the first or end array
if (isset($_POST['leftbutton'])){
if (($firstID = checkfirstklant()) != $_SESSION["huidigeklant"]) {
$_SESSION['huidigeklant']--;
echo "huidige klant = " . $_SESSION["huidigeklant"];
}
}
if (isset($_POST['rightbutton'])){
if (($lastID = checklastklant()) != $_SESSION["huidigeklant"]) {
$_SESSION['huidigeklant']++;
echo "huidige klant = " . $_SESSION["huidigeklant"];
}
}

одна вещь, чтобы упомянуть, и уже понял это. «setHuidigeKlant () устанавливает $ _SESSION [» huidigeklant «] в 1».

поэтому мой вопрос: как я могу запретить программе устанавливать значение 1, но при этом установить значение 1, если оно не было задано изначально?

Я не могу найти конкретный ответ для этого, но если вы это сделаете. отправьте ссылку на него, пожалуйста

заранее спасибо 😉

0

Решение

Попробуй это:

if (!isset($_SESSION["huidigeklant"])) { $_SESSION["huidigeklant"] = 1;}
0

Другие решения

Так что я уже нашел свою проблему xD

то, что Difster уже сказал в посте выше, мне нужно isset мой $ _SESSSION [«huidigeklant»] вместо проверки, если он пуст.

и я должен проверить, не нахожусь ли я уже в конце переменной в операторе if, вместо того, чтобы делать это с помощью функции.

так что теперь все работает как надо;)

еще раз спасибо

1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector