Witam,
Mam pewien problem. Chcę dodać kilka wycieczek do bazy danych. Na podstawie formularza (PHP) użytkownik (czyli np. ja) wypełnia co lubi robić, jakie atrakcje preferuje, jakim budżetem dysponuje itp. i po kliknięciu wyszukaj wyświetla te wycieczki z bazy danych (oczywiście na postawie tego co wypełnił w formularzu). Jest jakiś sposób jak to zrobić?
Z góry dziękuję za odpowiedż.
- Rejestracja:ponad 6 lat
- Ostatnio:ponad 4 lata
- Postów:8

- Rejestracja:prawie 9 lat
- Ostatnio:około 7 godzin
- Postów:380
- tworzysz standardowy formularz HTML, który przesyła dane GETem lub POSTem na jakiś konkretny adres.
- pod tym konkretnym adresem przyjmujesz dane i przeprowadzasz walidację.
- tworzysz zapytanie SQL, które na podstawie przesłanych danych wyszukuje odpowiednie pozycje w bazie.
- jeśli masz jakiś konkretny problem z którymś z powyższych kroków to wklejasz kod który już napisałeś na forum i otrzymujesz pomoc :)
Dlatego piszę na tym forum żeby się nauczyć jak to zrobić i potrzebuję kogoś kto by był w stanie mi pomóc
Najpierw musiałbyś zacząć od podstaw. Ale to trochę potrwa. W każdym razie - pytanie nie powinno brzmieć "jak zrobić system wycieczek" ale "chcę się nauczyć podstaw PHP - od czego mam zacząć". Następnie, jak poczujesz się pewniej w tym temacie, możesz zacząć ogarniać SQL. Ale i tak jest to temat na dobre kilka tygodni (i nie piszę o zrobieniu tego na poziomie zawodowym, a jedynie przyzwoitym).
- Rejestracja:ponad 11 lat
- Ostatnio:prawie 3 lata
- Postów:540
https://www.w3schools.com/php/php_mysql_intro.asp
i tematami w dół do
https://www.w3schools.com/php/php_mysql_select.asp
jeśli to Ci wystarczy
@youmound: ze spokojem, najpierw niech OP ogarnie PHP, a dopiero potem niech idzie na głębszą wodę, jaką jest SQL. Wprawdzie sam SQL (na poziomie podstawowym) nie jest mega trudny, ale i tak w opisanym przypadku PHP stanowi taką bazę, którą można potem rozszerzać.
- Rejestracja:ponad 11 lat
- Ostatnio:prawie 3 lata
- Postów:540
ale co Ty chcesz od PHP tutaj ?
<form action="?" method="POST">
<input type="text" name="budzet" />
<input type="submit" name="wyslij" value="wyslij mnie!" />
</form>
if (isset($_POST['wyslij'])
{
$budzet = $_POST['budzet'];
// i tu wchodzi SQL i szukamy po budżecie :O czy nas stać na te wycieczki na wyspy GOŁA GOŁA
}

ale co Ty chcesz od PHP tutaj ?
Robiąc "byle jak", żeby tylko poszło to można w kilku linijkach się zmieścić...
Ale do tego by się przydała jakaś paginacja wyników, możliwość określania dodatkowych parametrów, tworzenie sesji, może jakiś koszyk/schowek do wsadzenia wybranych ofert, być może jakaś porównywarka, zabezpieczenie przez XSS i tak dalej. Oczywiście - można mieć to głęboko gdzieś i zrobić na odwal, ale żeby to miało ręce i nogi to jednak trochę trzeba przysiąść do tematu. Poza tym - część z podanych przeze mnie rzeczy dotyczy dodatkowej funkcjonalności, ale są i tak podstawy (chociażby podany XSS czy SQL-injection), które powinny być odpowiednio potraktowane.

- Rejestracja:ponad 6 lat
- Ostatnio:ponad 5 lat
- Postów:67
Mozesz poćwiczyć na tym przykladzie. Szybko napisane wiec nie ma tam zadnych wodotrysków.
Nie jest to na SQL ale jak nie znasz podstaw to zacznij od tego.
<?php
function Formularz($s)
{
$s = "<form ACTION=".$_SERVER['SCRIPT_NAME']." method='post'>";
$s .= "<input TYPE='text' name='fraza'>";
$s .= "<input TYPE='submit' value='szukaj'>";
return $s;
};
if(!function_exists('SearchWords'))
{
function SearchWords($fi,$c,$f)
{
$foo = file($c.'/'.$fi);
$match = 0;
for($tmp=0;$tmp<count($foo);$tmp++)
{
list($link, $opis ,$klucze) = explode('|', $foo[$tmp]);
if(stristr($klucze, $f))
{
print "<li>";
print "Url: <a href=" . $link . ">" . $link . "</a><br>";
print "Opis: <i>" . $opis . "</i><br />";
print 'Znaleziono: ' . str_replace($f,'<font color=red>'.$f.'</FONT>', $klucze) . '<br />';
print "</li><hr width='200' align='left' noshade size='1'>\n";
$match++;
}
};
if($match == FALSE){
exit('Nie znalazlem <b><u>' . $f . '</u></b>');
}
};
};
(!$_POST['fraza']) ? print Formularz(@$s) : SearchWords('baza.txt','katalog_do_pliku',$_POST['fraza']);
?>
Utwórz katalog o nazwie 'katalog_do_pliku' bądz jakikolwiek inny tylko zmien nazwe w tej linijce i analogicznie plik 'baza.txt'
(!$_POST['fraza']) ? print Formularz(@$s) : SearchWords('baza.txt','katalog_do_pliku',$_POST['fraza']);
W pliku 'baza.txt' zawartosc wyglada nastepująco: [oczywiscie to masz skopiowac i wkleic do tego pliku a najlepiej wklepac ręcznie coby były entery]
index.php|opis 1asas|klucz1, klucz2, klucz3, klucz4a
lol.php|opis 2|klucz11, klucz22, ce, dupa, klucz3, klucz78
asd.php|opis 3|kl1, kl2, kl3, kl4, klucz21222345
Przyklad wyszuka cale istniejące frazy bądz ich część: 'klucz2', 'klu', 'kl' itd...
W przypadku gdy nic nie znajdzie dostajesz stosowne info.
Milej zabawy.
SzwagierMayster