Napisane: 20.07.2010, 15:20:51 | |
Grupa: Zarejestrowani Postów: 134 Dołączył: 9.08.2008 Skąd: Szczecin Ostrzeżenie: (0%) |
No a co ma robić? jak masz: header("location:main.php"); i pewnie logujesz się na pliku main,php Zrób sobie funkcje czy_zalogowany i jej użyj ps:
dodaj isset($_POST['login?]) zamiast tego $login |
Forum: Przedszkole · Podgląd postu: #768051 · Odpowiedzi: 4 · Wyświetleń: 556 |
Napisane: 25.07.2009, 02:15:16 | |
Grupa: Zarejestrowani Postów: 134 Dołączył: 9.08.2008 Skąd: Szczecin Ostrzeżenie: (0%) |
Do autorów postów z odpowiedziami: Chłopak napisał, że dopiero zaczyna uczyć się php, a wy mu wyjeżdżacie z MVC, gdzie nawet nie o co tutaj chodzi.. I do autora Prost ci opiszę prosty sposób, na początek dobry, po jakimś czasie zobaczysz, że jest naprawdę banalny. W 1 poście napisałeś, że chcesz mieć zespoły i albumy, a w tych albumach piosenki z tekstami. Trochę pracy trzeba będzie wykonać. DODAJ ZESPÓŁ Baza danych: Kod Zespol - id (auto_increment, int) - nazwa (varchar) Tworzysz najpierw plik dodaj_muzyka.php - Formularz: nazwa zespołu, możesz dodać inne pola, jak opis zespołu, datę powstania, tu już jak chcesz. Ja oprę się tylko na Nazwie zespołu. Robisz funkcję odpowiedzialną za odebranie danych coś na zasadzie:
Tutaj formularz sobie robimy // koniec pliku dodaj_zespol.php DODAJ ALBUM Baza danych: Kod Album - id (auto_increment, int) - nazwa (varchar) - id_zespolu(int) Plik dodaj_album.php Tutaj trzeba będzie już wykonać dwa zapytania tj. odczytać z bazy wykonawców i dodać album przynależny do id zespołu Odbieranie danych będzie takie samo, tylko że dopiszemy jedną zmienną id_zespolu Formularz: Trzeba odczytać w <select> wszystkie zespoły jakie dodałeś do bazy. Robisz formularz z nazwami: Wybierz zespół:
Wyświetli nam wszystkie zespoły w polu select do wyboru. Pod spodem robimy pole input gdzie wpiszesz nazwę Albumy // Koniec dodawania albumu. To jest bardzo prosty przykład. Ty go wykonujesz, więc nie będziesz sobie psuł stron złym kodem wpisanym do formularza. Na końcu napiszę podstawowe funkcje formatowania tekstu odebranego z <form> Dodajemy Piosenkę Baza Kod Piosenki - id (auto_increment, int) - nazwa (varchar) - tekst(text) - id_zespolu(int) - id_albumu(int) Tutaj problem jest jeszcze bardziej skomplikowany. Bo musimy dodać piosenkę do odpowiedniego albumu, który należy do odpowiedniego zespołu. Nie chcę Ci zawracać głowy ajaxem i js. Podam prosty przykład, jak można takie coś obejść, Robisz plik dodaj_piosenke.php Formularz: - Tytul(input) - Tekst(textarea) - id_zespolu - id_albumy z id_zespolu Struktura: Wybierz zespół(pole select) i kliknij dalej Wysyła ci w $_POST['id_zespolu'], który użyjesz do odczytania albumów należących do tych zespołów
To na górze już zostawimy teraz dalszy etap. Mamy już id_albumu należącego do id_zespołu if($_GET['akcja']=="dodajpiosenke"){ jezeli GET akcja = dodajpiosenke if(isset($_POST['zapisz_piosenke'])){// sprawdza czy klknieto na wyslij name=zapisz_piosenke $id_zespolu=$_POST['id_zespolu']; $id_albumu=$_POST['id_albumu']; $tytul=$_POST['tytul']; $tekst=$_POST['tekst']; // tutaj mozesz ustawic sprawdzanie czy są pole pełne // i dodajesz do bazy @mysql_query("INSERT INTO Piosenki(id,tytul,tekst,id_zespolu,id_albumu) VALUES('','$tytul','$tekts','$id_zespolu','$id_albumu')"); echo "Dodano nową piosnkę"; }else{ $id_zespolu=$_POST['id_zespolu']; $id_albumu=$_POST['id_albumu']; // Tuaj piszemy formularz Tytuł Piosenki Tekst możesz użyć polecenie SELECT do odczytu nazw kategorii, żeby ci się nie myliło Coś takiego: $sql= "SELECT nazwa FROM Zespoly WHERE id='$id_zespolu' "; $query = mysql_query($select); $read=mysql_fetch_array($query); $sql2= "SELECT nazwa FROM AlbumyWHERE id='$id_albumu' "; $query2 = mysql_query($select2); $read2=mysql_fetch_array($query2); echo" Dodajesz do: ".$read['name']." > ".$read2['name']." <form method='post' action='dodaj_piosenke.php?akcja=dodajpiosenke'> tytuł: <input name='tytul' value='' /> tekst: <taxtarea name='tekst'></textarea> <input type='hidden' name='id_zespolu' value='".$id_zespolu."' /> // Tutaj ukryjemy id zespolu <input type='hidden' name='id_albumu' value='".$id_albumu."' /> // Tutaj ukryjemy id albumu <input name='zapisz_piosenke' value='Zapisz' /> </form> "; }// zamyka name=zapisz_piosenke }// zamyka GET = dodajpiosenke Troszkę się rozpisałem. to i tak jest mało optymalny kod. działasz po swojej stronie, więc nie dawałem zabezpieczeń, ale zawsze można dać filtrowanie tekstów itp strip_tag($_POST['pole']) - wycina ci taki i zawartość <scrip>costam</scritp> - wyniik: costam trim - usuwa białe znaki, czyli spacje, na początku i na końcu htmlspecialchars - zamienia znaczniki html na ich odpowiedniki znaków specjalnych np. > na > Również dawaj warunki, jeżeli pole jest puste to wyświetl wynik, że jest źle. Pozdrawiam. |
Forum: Przedszkole · Podgląd postu: #639824 · Odpowiedzi: 9 · Wyświetleń: 1 265 |
Napisane: 21.07.2009, 00:29:15 | |
Grupa: Zarejestrowani Postów: 134 Dołączył: 9.08.2008 Skąd: Szczecin Ostrzeżenie: (0%) |
Bo nie masz $id odczytywanego! $id=intval($_GET['id']); przed zapytaniem i po sprawie |
Forum: Przedszkole · Podgląd postu: #637493 · Odpowiedzi: 5 · Wyświetleń: 645 |
Napisane: 27.01.2009, 02:19:42 | |
Grupa: Zarejestrowani Postów: 134 Dołączył: 9.08.2008 Skąd: Szczecin Ostrzeżenie: (0%) |
|
Forum: Przedszkole · Podgląd postu: #563309 · Odpowiedzi: 8 · Wyświetleń: 1 329 |
Napisane: 19.08.2008, 23:33:25 | |
Grupa: Zarejestrowani Postów: 134 Dołączył: 9.08.2008 Skąd: Szczecin Ostrzeżenie: (0%) |
tu masz switch:
W taki sposób możesz dodać tylko takie kategorie jakie mają być Ktoś wpisze: strona.php?action=konstrukcje : wyświetli dalszą część kodu strona.php?action=bleble strona.php?action= strona.php?action=0 strona.php?action=http://www.strona.pl/zlosliwykod.php : wyświetli "Niestety, ale taki dział nie istnieje!!" ------------ Możesz dodawac kolejne warunki np jezeli get"id" nie jest większe od 0 i są to tylko liczby to zle, jesli tak to pokaz action=konstrukcje&id=1 : ok action=konstrukcje&id=fdsfd : zle itp |
Forum: Przedszkole · Podgląd postu: #507053 · Odpowiedzi: 23 · Wyświetleń: 2 738 |
Nowe odpowiedzi Brak nowych odpowiedzi Popularny temat (Nowe) Popularny temat (Brak nowych) |
Sonda (Nowe) Sonda (Brak nowych) Zamknięty temat Przeniesiony temat |
Wersja Lo-Fi | Aktualny czas: 27.04.2024 - 03:21 |