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

Parse error - php

VPS Starter Arubacloud
0 głosów
1,255 wizyt
pytanie zadane 28 października 2017 w PHP przez Undisputed Gaduła (3,040 p.)

Witam.
Pokazuje mi się taki błąd:
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /opt/lampp/htdocs/Alarm/zaloguj.php on line 36

<?php
        session_start();
        if ((!isset($_POST['login'])) || (!isset($_POST['haslo'])))
        {
                header('Location: index.php');
                exit();
        }
        require_once "connect.php";

        $polaczenie = @new mysqli($host, $db_user, $db_password, $db_name);

        if ($polaczenie->connect_errno!=0)
        {
                echo "Error:".$polaczenie->connect_errno;
        }
        else
        {
                $loginnowy = $_POST['login'];
                $haslonowy = $_POST['haslo'];

                $sql = "SELECT * FROM uzytkownicy WHERE user='$loginnowy' AND pass='$haslonowy'";
                if($rezultat = @$polaczenie->query($sql) )
                {
                        $ilu_userow = $rezultat->num_rows;
                        if($ilu_userow>0)
                        {       
                                $_SESSION['zalogowany'] = true;
                                $wiersz = $rezultat->fetch_assoc();
                                $wiersz2 = $rezultat2->fetch_assoc();
                                $_SESSION['idu'] = $wiersz['idu'];
                                $_SESSION['imie'] = $wiersz['imie'];
                                $_SESSION['nazwisko'] = $wiersz['nazwisko'];
                                $_SESSION['email'] = $wiersz['email'];
                                $_SESSION['nr_urzadzenia'] = $wiersz['nr_urzadzenia'];
                                $sql2 = "SELECT * FROM czujniki WHERE nr_urzadzenia=$_SESSION['nr_urzadzenia']"; //Tutaj blad
                                if($rezultat2 = @polaczenie->query($sql2))
                                {
                                        $ile = $rezultat2->num_rows;
                                        if($ile > 0)
                                        {
                                                $_SESSION['idc'] = $wiersz2['wiersz2['idc']'
                                                $_SESSION['nr_urzadzenia2']= $wiersz2['nr_urzadzenia'];
                                                $_SESSION['data']= $wiersz2['data'];
                                                $_SESSION['czas']= $wiersz2['czas'];
                                                $_SESSION['czujka1']= $wiersz2['czujka1'];
                                                $_SESSION['czujka2']= $wiersz2['czujka2'];
                                                $_SESSION['czujka3']= $wiersz2['czujka3'];
                                                $_SESSION['czujka4']= $wiersz2['czujka4'];
                                        }
                                }
                                unset($_SESSION['blad']);
                                $rezultat->free_result();
                                $rezultat2->free_result();
                                header('Location: panel.php');
                        }
                        else
                        {
                                $_SESSION['blad']='<div class="srodek"<h3>Nieprawidłowy login lub hasło!</h3></div>';
                                header('Location: index.php');
                        }
                }

                $polaczenie->close();
        }

?>

Czy ktoś wie jak to naprawić?
Sprawdzałem w google, ale to nic mi nie pomogło.
Z góry dziękuję za pomoc :)

1 odpowiedź

0 głosów
odpowiedź 28 października 2017 przez Arkadiusz Waluk Ekspert (287,550 p.)
wybrane 28 października 2017 przez Undisputed
 
Najlepsza
if($rezultat2 = @polaczenie->query($sql2))

Brakuje tu $ przed nazwą zmiennej - powinno być $polaczenie a nie polaczenie.

komentarz 28 października 2017 przez Undisputed Gaduła (3,040 p.)

Zmieniłem to i nad mam ten sam błąd :/
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /opt/lampp/htdocs/Alarm/zaloguj.php on line 36

 

<?php
        session_start();
        if ((!isset($_POST['login'])) || (!isset($_POST['haslo'])))
        {
                header('Location: index.php');
                exit();
        }
        require_once "connect.php";

        $polaczenie = @new mysqli($host, $db_user, $db_password, $db_name);

        if ($polaczenie->connect_errno!=0)
        {
                echo "Error:".$polaczenie->connect_errno;
        }
        else
        {
                $loginnowy = $_POST['login'];
                $haslonowy = $_POST['haslo'];

                $sql = "SELECT * FROM uzytkownicy WHERE user='$loginnowy' AND pass='$haslonowy'";
                //$sql2 = "SELECT * FROM czujniki ";
                if($rezultat = @$polaczenie->query($sql) /*&& $rezultat2 = @$polaczenie->query($sql2)*/)
                {
                        $ilu_userow = $rezultat->num_rows;
                        if($ilu_userow>0)
                        {       
                                $_SESSION['zalogowany'] = true;
                                $wiersz = $rezultat->fetch_assoc();
                                $wiersz2 = $rezultat2->fetch_assoc();
                                $_SESSION['idu'] = $wiersz['idu'];
                                $_SESSION['imie'] = $wiersz['imie'];
                                $_SESSION['nazwisko'] = $wiersz['nazwisko'];
                                $_SESSION['email'] = $wiersz['email'];
                                $_SESSION['nr_urzadzenia'] = $wiersz['nr_urzadzenia'];
                                $sql2 = "SELECT * FROM czujniki WHERE nr_urzadzenia=$_SESSION['nr_urzadzenia']";
                                if($rezultat2 = @$polaczenie->query($sql2))
                                {
                                        $ile = $rezultat2->num_rows;
                                        if($ile > 0)
                                        {
                                                $_SESSION['idc'] = $wiersz2['wiersz2['idc']'
                                                $_SESSION['nr_urzadzenia2']= $wiersz2['nr_urzadzenia'];
                                                $_SESSION['data']= $wiersz2['data'];
                                                $_SESSION['czas']= $wiersz2['czas'];
                                                $_SESSION['czujka1']= $wiersz2['czujka1'];
                                                $_SESSION['czujka2']= $wiersz2['czujka2'];
                                                $_SESSION['czujka3']= $wiersz2['czujka3'];
                                                $_SESSION['czujka4']= $wiersz2['czujka4'];
                                        }
                                }
                                unset($_SESSION['blad']);
                                $rezultat->free_result();
                                $rezultat2->free_result();
                                header('Location: panel.php');
                        }
                        else
                        {
                                $_SESSION['blad']='<div class="srodek"<h3>Nieprawidłowy login lub hasło!</h3></div>';
                                header('Location: index.php');
                        }
                }

                $polaczenie->close();
        }

?>

 

komentarz 28 października 2017 przez Arkadiusz Waluk Ekspert (287,550 p.)
$sql2 = "SELECT * FROM czujniki WHERE nr_urzadzenia=$_SESSION['nr_urzadzenia']";

Pewnie jeszcze tutaj ze zmienną, spróbuj ją wstawić np. tak:

$sql2 = "SELECT * FROM czujniki WHERE nr_urzadzenia={$_SESSION['nr_urzadzenia']}";

albo rozdzielając ciągi i łącząc kropką (konkatenacja). No i pomijam fakt, że raczej to powinno być bindowane.


$_SESSION['idc'] = $wiersz2['wiersz2['idc']'

A to też nie wiem co ma być.

komentarz 28 października 2017 przez Undisputed Gaduła (3,040 p.)

Bardzo dziękuję za pomoc :)
Niestety mam kolejny błąd

Notice: Undefined variable: rezultat2 in /opt/lampp/htdocs/Alarm/zaloguj.php on line 30

Fatal error: Uncaught Error: Call to a member function fetch_assoc() on null in /opt/lampp/htdocs/Alarm/zaloguj.php:30 Stack trace: #0 {main} thrown in /opt/lampp/htdocs/Alarm/zaloguj.php on line 30

Jeśli masz czas i mógłbyś zerknąć to byłbym bardzo wdzięczny.

komentarz 28 października 2017 przez Undisputed Gaduła (3,040 p.)
Ok, już działa

Podobne pytania

+1 głos
2 odpowiedzi 524 wizyt
0 głosów
1 odpowiedź 1,252 wizyt
pytanie zadane 25 stycznia 2020 w PHP przez Borys Użytkownik (830 p.)
0 głosów
1 odpowiedź 1,419 wizyt
pytanie zadane 3 grudnia 2017 w PHP przez Mateusz Bogumił Obywatel (1,380 p.)

92,452 zapytań

141,262 odpowiedzi

319,085 komentarzy

61,854 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

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 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!

...