![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 1 Dołączył: 21.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam, od niedawna bawię się php, i postanowiłem napisać własnego CMS'a
![]() Napisałem między innymi skrypt rejestracji, ale nie wiem czy nie popełniłem w nim jakiś rażących błędów, oprócz tego że nie miesza się html'a z php. Nie wiem również czy jest on zoptymalizowany i czy jest bezpieczny... Proszę o szczere opinie, i wytykanie mi błędów. Nie śmiejcie się z nazewnictwa zmiennych i funkcji ![]() Skrypt można przetestować pod tym adresem: http://e50.com.pl/test/register.php A kod to: http://e50.com.pl/test/kod.txt Za długi był by go wkleić tutaj ![]() |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 447 Pomógł: 191 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
niechce mi sie wszystkiego czytać, ale już widze pare błedów optymalizacji, a konkretnie na początku pobierasz z jednej tabeli nr 1 wartośc nr 1 a potem z tej samej tabeli wartosć nr 2, niemożesz wykonać raz zapytanie pobierając obie wartości?
-------------------- :)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 1 Dołączył: 21.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Czyli w jaki sposób mam pobrać kilka rekordów z tabeli i zapisać je osobno w zmiennych?
Proszę o dalsze opinie. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 5.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
kurde, tego sie nie dało normalnie przeczytać, popraw formatowanie i wrzuć ponownie, a wtedy na pewno ludzie będą chętniej pomagać, zauważy się więcej błedów a i Tobie będzie się ten kod łatwiej poprawiać
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 1 Dołączył: 21.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Racja. http://www.wklejto.pl/8614
Czekam na sugestie... Ok, to może inaczej... Jak za pomocą jednego zapytania do mysql uzyskać osobno wartości z kilku rekordów? Za pewne przez pętlę, ale nie wiem jak potem te dane wyciągnąć... Mam zapytania:
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 171 Pomógł: 32 Dołączył: 5.08.2008 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Pętla while :
Jeśli np "nazwa" to u Ciebie 2-ga kolumna licząc od lewej (pierwsza kolumna ma index 0) to robisz tak Kod $zapytanie = "SELECT * FROM config"; $result = mysql_query($zapytanie); while($row = mysql_fetch_array($result)) { echo $row['1'] . '<br />'; } Niewiem czy konkretnie o to chodzi. -------------------- ---------------------------
"Jeżeli trzeci dzień z rzędu nie chce Ci się pracować tzn że dziś jest ŚRODA ! Algorytmy , Programowanie , Tworzenie WWW - SPRAWDŹ |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 1 Dołączył: 21.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Ale ja nie chcę wyświetlać wyników tylko je przypisywać do różnych zmiennych.
Mam tabelę config a w niej 2 kolumny: nazwa i wartosc. Rekordów mam 3. I chcę w jednym zapytaniu pobrać wszystkie dane z tabeli i każdy rekord przypisać do innej zmiennej, tak jak poradził peter13135 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 419 Pomógł: 42 Dołączył: 12.08.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Wszystkie dane z tabeli SELECT * FROM tabela
Funkcja http://pl.php.net/manual/pl/function.eval.php while($wynik = mysql_fetch_array($zapytanie) eval("\$$wynik['nazwa']=$wynik['wartosc'];"); Dzieki temu stworza Ci sie 3 zmienne o nazwach jak w tabeli (chyba ze beda spacje) i wartosciach jak w tabeli. Ten post edytował golaod 23.08.2008, 12:01:20 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 171 Pomógł: 32 Dołączył: 5.08.2008 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
To dodaj :
Kod $zapytanie = "SELECT nazwa, wartosc FROM config";
$result = mysql_query($zapytanie); $licznik = 1; while($row = mysql_fetch_array($result)) { $wartosc[$licznik] =$row['wartosc']; $nazwa[$licznik] = $row['nazwa']; licznik++; } Ten post edytował ferrero2 23.08.2008, 12:08:35 -------------------- ---------------------------
"Jeżeli trzeci dzień z rzędu nie chce Ci się pracować tzn że dziś jest ŚRODA ! Algorytmy , Programowanie , Tworzenie WWW - SPRAWDŹ |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 419 Pomógł: 42 Dołączył: 12.08.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
@ferrero2 nie ucz go zlych nawykow
PHP jest sprytne i potrafi sam indeksowac tablice zatem wystarczy tylko $nazwa[]=$row['nazwa'],$wartosc[]=$row['wartosc']. A w ogole to po co mu dwie tablice do tego ? Ten post edytował golaod 23.08.2008, 12:37:46 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 1 447 Pomógł: 191 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
<?
$sql=@mysql_query("SELECT wartosc FROM `config` ); $row=mysql_fetch_array($sql); $domena=$row['domena']; $path = $row['script_path']; $email=$row['email]; ?> zdaje sie że powinno być tak, jeśli źle to niech mnie ktoś poprawi ale myśle że dobrze myśle więc napisałem co myślałem ![]() ![]() edit, coś mi sie pomyliło, myślałem że masz inną strukture tabeli w twoim przypadku powinno sie zastosować petle $sql=@mysql_query("SELECT wartosc FROM `config` ); for($x=0,$x>3;$x++) { $row=mysql_fetch_array($sql); $nazwa[$i]=row[wartosc]; } no i $nazwa[0] to będzie domena $nazwa[1] to patch $nazwa[2] to email (tak mi sie wydaje że tak być powinno, jak źle to poprawcie) Ten post edytował peter13135 25.08.2008, 13:16:48 -------------------- :)
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 17:15 |