• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wyświetla się błąd w php

Object Storage Arubacloud
0 głosów
115 wizyt
pytanie zadane 14 stycznia 2022 w PHP przez lukas1231233 Nowicjusz (200 p.)
<?php
session_start();

$host = "localhost";
$db_user = "root";
$db_password = "";
$db_name = "klienci1";

$conn=mysqli_connect($host, $db_user,$db_password, $db_name);

if($conn)
{
    echo "tak";
}
else{echo "nie";}

	if(isset($_POST['email'])) {
        $Jest_OK = true;
        $user = $_POST['user'];
        $imie = $_POST['imie'];
        $nazwisko = $_POST['nazwisko'];
        $ulica = $_POST['ulica'];
        $kraj = $_POST['kraj'];

        $email = $_POST['email'];
        $emailS = filter_var($email, FILTER_SANITIZE_EMAIL);

        $imie = htmlentities($imie, ENT_QUOTES, "UTF-8");
        $nazwisko = htmlentities($nazwisko, ENT_QUOTES, "UTF-8");

        if ((strlen($user) < 3) || (strlen($user) > 20)) {
            $Jest_OK = false;
            $_SESSION['e_user'] = "Nick musi posiadać od 3 do 20 znaków!";
        }

        if (ctype_alnum($user == false)) {
            $Jest_OK = false;
            $_SESSION['e_user'] = "Username może składać się tylko z liter i cyfr (bez polskich znaków)";
        }


        if ((strlen($imie) <= 1) || (strlen($imie) > 25)) {
            $Jest_OK = false;
            $_SESSION['e_pole'] = "Pole musi zawierać od 2 do 25 znaków i tylko litery";
        }


        if ((strlen($nazwisko) <= 1) || (strlen($nazwisko) > 25)) {
            $Jest_OK = false;
            $_SESSION['e_nazwisko'] = "Pole musi zawierać od 2 do 25 znaków i tylko litery";
        }


        if ((filter_var($emailS, FILTER_VALIDATE_EMAIL) == false) || ($emailS != $email)) {
            $Jest_OK = false;
            $_SESSION['email'] = "Wpisz poprawny adres E-mail";
        }


        $sekret = "6Lfp8QMeAAAAAOPkRGgcB9CdRNYqjPU8LELnoxuA";

        $sprawdz = file_get_contents('https://www.google.com/recaptcha/api/siteverify?secret=' . $sekret . '&response=' . $_POST['g-recaptcha-response']);

        $odpowiedz = json_decode($sprawdz);

        if ($odpowiedz->success==false) {
            $Jest_OK = false;
            $_SESSION['e_bot'] = "Potwierdź, że nie jesteś botem";
        }


        if ($odpowiedz->success==false) {
            $Jest_OK = false;
            $_SESSION['e_bot'] = "Potwierdź, że nie jesteś botem";
        }

        $haslo1 = $_POST['haslo1'];
        $haslo2 = $_POST['haslo2'];

        if ((strlen($haslo1) < 8) || (strlen($haslo1) > 20)) {
            $Jest_OK = false;
            $_SESSION['e_haslo'] = "Hasło musi zawierać od 8 do 20 znaków";
        }

        if ($haslo1 != $haslo2) {
            $Jest_OK = false;
            $_SESSION['e_haslo'] = "Podane hasła nie są identyczne";
        }

        $haslo_hash = password_hash($haslo1, PASSWORD_DEFAULT);

        if (!isset($_POST['regulamin'])) {
            $Jest_OK = false;
            $_SESSION['e_regulamin'] = "Nie zaakceptowałeś regulaminu";
        }

        $_SESSION['fr_user'] = $user;
        $_SESSION['fr_email'] = $email;
        $_SESSION['fr_haslo1'] = $haslo1;
        $_SESSION['fr_haslo2'] = $haslo2;
        if (isset($_POST['regulamin'])) $_SESSION['fr_regulamin'] = true;


       mysqli_report(MYSQLI_REPORT_STRICT);


        try{


            if ($conn->connect_errno!=0) {
                throw new Exception(mysqli_connect_errno());
            } 
			else 
			{
                $result = $conn->query("SELECT * FROM uzytkownicy WHERE email='$email'");

                if (!$result) throw new Exception($conn->error);
                $result = $conn->query("SELECT * FROM uzytkownicy WHERE User='$user'");

                if (!$result) throw new Exception($conn->error);
                $ile_userow = $result->num_rows;

                if ($ile_userow > 0) 
				{
                    $Jest_OK = false;
                    $_SESSION['e_user'] = "Istnieje już konto o takiej nazwie Username";
                }
                $ile_maili = $result->num_rows;

                if ($ile_maili > 0) 
				{
                    $Jest_OK = false;
                    $_SESSION['e_email'] = "Istnieje już konto przypisane do tego adresu E-Mail";
                }

                if ($Jest_OK == true)
                {
                    if ($conn->query("INSERT INTO uzytkownicy 
						VALUES (NULL,'$user','$imie','$nazwisko','$email','$haslo_hash','$ulica','$kraj'"))
                    {
                        $_SESSION['udanarejestracja'] = true;
                        $_SESSION['udanarejestracja'] = "Jesteś zarejestrowany! Możesz się zalogować";
                        header("Location:Rejestracja.php");

                    }
                    else
                    {
                        throw new Exception($conn->error);
                    }

                }

                $conn->close();
            }
        }catch (Exception $e) {
            echo "Błąd serwera! Przepraszamy dokończ rejestrację w innym terminie! ";
            echo 'Informacja:' . $e;

        }
    }

?>

Nie mam pojęcia co jest źle, już sporo czasu szukam rozwiązania, poprawiam to i tamto i nadal nie wiem o co chodzi. Ten plik to Rejestracja.php, pod spodem jest kod html którego nie wklejam.

Treść błędu to :You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 2 in F:\xampp\htdocs\esklep\Rejestracja.php:148 Stack trace: #0 {main}

komentarz 14 stycznia 2022 przez VBService Ekspert (253,340 p.)

BTW, masz "zdublowany" kod linia: 66-75.  wink

1 odpowiedź

+1 głos
odpowiedź 14 stycznia 2022 przez SzkolnyAdmin Szeryf (86,360 p.)
Linia 139 przenieś cudzysłów pomiędzy nawiasy.

Podobne pytania

0 głosów
1 odpowiedź 206 wizyt
pytanie zadane 12 stycznia 2018 w PHP przez Xentis Początkujący (280 p.)
0 głosów
1 odpowiedź 597 wizyt
0 głosów
0 odpowiedzi 105 wizyt
pytanie zadane 15 lutego 2017 w PHP przez misiek.sz Bywalec (2,050 p.)

92,573 zapytań

141,423 odpowiedzi

319,648 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...