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

PHP wyszukiwanie danych z tabeli bazy danych sql

Object Storage Arubacloud
0 głosów
1,883 wizyt
pytanie zadane 20 maja 2018 w SQL, bazy danych przez Robciu123 Nowicjusz (190 p.)

Hej wszystkim, mój problem jest dokładnie taki jak w tytule.

Nie jestem biegł w PHP i prawdopodobnie nie będę, bo nie jest to kierunek w którym chcę iść.
Jednak muszę zaliczyć przedmiot.

Miałem stworzyć formularz logowania/rejestracji (łącznie z sql) w którym po zalogowniu mogę wyszukać samochód który chcę kupić, lub dodać do bazy ten który chcę sprzedać.

Problem pojawia się przy wyszukiwaniu. Wujek google nie pomaga, tylko miesza mi bardziej w głowie.Podejrzewam, że błąd jest banalny, jednak siedzę nad kodem już 2 godziny i nie wiem co zrobiłem nie tak. Tutaj wklejam kod wyniku szukania:

<?php
 
    session_start();
 
    if (!isset($_SESSION['zalogowany']))
    {
        header('Location: index.php');
        exit();
    }
 
?>
<!DOCTYPE HTML>
<html lang="pl">
<head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <title>Kup/sprzedaj samochód</title>
</head>
 
<body>
 
<?php
 
    echo "<p>Witaj ".$_SESSION['user'].'! [ <a href="logout.php">Wyloguj się!</a> ]</p>';
    echo "<p><b>E-mail</b>: ".$_SESSION['email'];
?>
 
<?php
$metoda=$_POST['metoda'];
$metoda1=$_POST['metoda1'];
$metoda2=$_POST['metoda2'];
$metoda3=$_POST['metoda3'];
$szukanehaslo=$_POST['szukanehaslo'];
$szukanehaslo1=$_POST['szukanehaslo1'];
$szukanehaslo2=$_POST['szukanehaslo2'];
$szukanehaslo3=$_POST['szukanehaslo3'];
$szukanehaslo=trim($szukanehaslo);
$szukanehaslo1=trim($szukanehaslo1);
$szukanehaslo2=trim($szukanehaslo2);
$szukanehaslo3=trim($szukanehaslo3);
if (!$metoda || !$metoda1 || !$metoda2 || !$metoda3)
{
    echo 'Brak parametrów wyszukiwania, wróć do poprzedniej strony i spróbuj ponownie!';
    exit;
}
if(!get_magic_quotes_gpc())
{
    $metoda=addslashes($metoda);
    $metoda1=addslashes($metoda1);
    $metoda2=addslashes($metoda2);
    $metoda3=addslashes($metoda3);
    $szukanehaslo=addslashes($szukanehaslo);
    $szukanehaslo1=addslashes($szukanehaslo1);
    $szukanehaslo2=addslashes($szukanehaslo2);
    $szukanehaslo3=addslashes($szukanehaslo3);
}
@$polaczenie = new mysqli('localhost', 'root', '', 'fury');
if(mysqli_connect_errno())
{
    echo 'Połączenie nie powiodło się!';
    exit;
}
$polaczenie->query('SET NAMES utf8');
$polaczenie->query('SET CHARACTER_SET utf8_unicode_ci');
$zapytanie = "SELECT * FROM dane where ".$metoda. " like '%".$metoda1."%' OR ".$metoda. " like '%".$metoda2."%' OR ".$metoda." like '%".$metoda3."%'";
$wynik=$polaczenie->query($zapytanie);
$ile_znaleziono=$wynik->num_rows;
echo'<p> Liczba znalezionych samochodów: '.$ile_znaleziono. '</p>';
for($i=0;$i<$ile_znaleziono;$i++)
{
    $wiersz=$wynik->fetch_assoc();
    echo'<p><b>'.($i+1).'.Tytuł: '.stripcslashes($wiersz['tytul']).'</b><br />';
    echo'Marka: '.stripcslashes($wiersz['Marka']).'<br />';
    echo'Model: '.stripcslashes($wiersz['Model']).'<br />';
    echo'Pojemnosc: '.stripcslashes($wiersz['Pojemnosc']).'<br />';
    echo'Rocznik: '.stripcslashes($wiersz['Rocznik']).'<br />';
}
    $wynik->free();
    $polaczenie->close();
 
?>
</body>
</html>

kod szukania

<?php
 
    session_start();
 
    if (!isset($_SESSION['zalogowany']))
    {
        header('Location: index.php');
        exit();
    }
 
?>
<!DOCTYPE HTML>
<html lang="pl">
<head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
    <title>Kup/sprzedaj samochód</title>
</head>
 
<body>
 
<?php
 
    echo "<p>Witaj ".$_SESSION['user'].'! [ <a href="logout.php">Wyloguj się!</a> ]</p>';
    echo "<p><b>E-mail</b>: ".$_SESSION['email'];
?>
 
    <form action="wyniksprzedaj.php" method="post">
        Wyszukaj według:
    <select name="metoda">
        <option value="Marka" /> Marka
 
    </select>
        <select name="metoda1">
        <option value="Model" /> Model
        </select>
        <select name="metoda2">
        <option value="Pojemnosc" /> Pojemnosc
        </select>
        <select name="metoda3">
        <option value="Rocznik" />  Rocznik
        </select>
        <br />
        <input type ="text" name="szukanehaslo">
        <input type ="text" name="szukanehaslo1">
        <input type ="text" name="szukanehaslo2">
        <input type ="text" name="szukanehaslo3">
        <input type="submit" value="szukaj">
        </form>
    <br /><br />
 
</body>
</html>
 

Proszę o pomoc w rozwiązaniu mojego problemu, pozdrawiam serdecznie!

komentarz 20 maja 2018 przez Mariusz08 Maniak (62,300 p.)
@$polaczenie = new mysqli('localhost', 'root', '', 'fury');

Usuń tą małpę i powiedz co wypluwa

komentarz 20 maja 2018 przez Robciu123 Nowicjusz (190 p.)

kompletnie nic, jest dokładnie tak jak było czyli 

Witaj Rober123! [ Wyloguj się! ]

E-mail: Robciu@o2.pl

Liczba znalezionych samochodów: 0

"

komentarz 20 maja 2018 przez Mariusz08 Maniak (62,300 p.)
A co dokładnie nie działa? Formularz się nie wyświetla? Zawsze znajduje 0 samochodów? Problem z POSTem?
komentarz 20 maja 2018 przez Robciu123 Nowicjusz (190 p.)
Zawsze znajduje 0 samochodów, pójdę krok dalej i powiem że powinien wyświetlać konkretne dane nt samochodu, czego również nie robi

2 odpowiedzi

0 głosów
odpowiedź 20 maja 2018 przez PolYGlok Pasjonat (19,450 p.)
edycja 20 maja 2018 przez PolYGlok
Nie wiem czy to ma znaczenie ale paragraf w 25 lini nie jest zamknięty! W obu kodach.
komentarz 20 maja 2018 przez Robciu123 Nowicjusz (190 p.)
nie ma, ale dzięki za wyłapanie ;)
0 głosów
odpowiedź 21 maja 2018 przez OdsetekGlupoty Pasjonat (15,360 p.)
Witam,

Jestem prawie pewny, że błąd jest w zapytaniu, aczkolwiek ta kwerenda jest taka długa i tak w niej namieszałeś, że nie próbowałem trudzić się nad rozszyfrowaniem tej zagadki. Po co używasz kondygnacji (kropki) skoro w zmiennej masz ""? Nie trzeba używać kondygnacji w cudzysłowie. Spróbuj wykonać te zapytanie bezpośrednio w bazie danych zamieniając zmienne na jakieś liczby. Oczywiście najpierw stwórz odpowiedni rekord w bazie.

Podobne pytania

0 głosów
1 odpowiedź 228 wizyt
0 głosów
1 odpowiedź 418 wizyt
0 głosów
1 odpowiedź 2,576 wizyt
pytanie zadane 28 lipca 2017 w SQL, bazy danych przez Mateusz1223 Bywalec (2,440 p.)

92,572 zapytań

141,422 odpowiedzi

319,643 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!

...