Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak zamiescic AND w procedurze IF.
Forum PHP.pl > Forum > Przedszkole
seba22
Witam,

Mam problem ponieważ muszę wpisać w skrypt procedurę IF która będzie zawierać dwa parametry.

w Delphi, piszemy po prostu IF a='ppp' AND b='ppp' then

A jak to zadeklarować w skrypcie PHP.



  1. <?php
  2. if ($row[1]==$IdUzytkownika)
  3. {
  4. echo('Twoj plik');
  5. echo(' Link do skasowania');
  6.  
  7. }
  8. ?>


I teraz trzeba dołożyć dodatkową zależność :/

Ta procedurka ma za zadanie sprawdzić tylko i wyłącznie czy jesteśmy właścicielem pliku.
Jeżeli tak, wyświetli nam linka.

Teraz jest właściwa część czyli osobna procedura, która sprawdzi nas pod kątem bycia właścicielem ! oraz chęci skasowania pliku.

  1. <?php
  2. IF
  3.  
  4. $kasacja=$_GET['kasuj'];
  5. ?>

  1. $result = mysql_query( 'DELETE FROM Pliki WHERE ID_pliku=='.$kasacja.,ID_wlasciciela=='.$id_uzytkownika.);

Czy mogł by mi ktoś to skompletować smile.gif

Czyli połączył 2 w 1 ?
?
czachor
Hm nie rozumiem.
Tak samo?
  1. <?php
  2. if ($row[1]==$IdUzytkownika AND $foo == 'bar')
  3. {
  4. }
  5. ?>
Kowalikus
O to Ci chodzi?
  1. <?php
  2. $result = mysql_query( 'DELETE FROM Pliki WHERE ID_pliku=' . $kasacja . ' AND ID_wlasciciela=' . $id_uzytkownika . ';');
  3. ?>
l0ud
Chodzi o sprawdzanie dwóch lub więcej wyrażeń w jednym warunku?

AND

if ($a == 'asd' && $b == 'dsa')

OR

if ($a == 'asd' || $b == 'dsa')
seba22
Witam,

Przepraszam miałem wezwanie i musiałem przerwać pracę.

Pierwsza odpowiedz była 100 % trafiona winksmiley.jpg

Chodziło mi o przykład użycia znacznika AND.


PS: czy byli byście tak mili i pokazali jaką komendą wyfiltrować zmienną pobierana przez formularz aby była bezpieczna dla bazy MYSQL ?


Chodzi mi o usunięcie ewentualnych znaków które mogą namieszać w mózgu serwerowi SQL, mam tu na myśli ' > ; i resztę bajerów które ktoś mógł by wykorzystać negatywnie.


Bardzo dziękuję smile.gif
l0ud
Może i AND użyte w warunkach działa, jednak polecam używania tego co wymieniłem wyżej czyli &&

Co do mysql, najlepiej umieścić w to w zapytaniu w ten sposób:

$result = mysql_query( 'DELETE FROM Pliki WHERE ID_pliku="' .mysql_real_escape_string($kasacja) . '" AND ID_wlasciciela="' .mysql_real_escape_string($id_uzytkownika). '";');

czyli dodać cudzysłowy w samym zapytaniu, oraz mysql_real_escape_string

http://pl2.php.net/manual/pl/function.mysq...cape-string.php
seba22
Czy muszę wpychać te mysql_real_escape_string($kasacja tutaj w procedure MYSQL, czy mogę wyżej w stylu
$kasacja=mysql_real_escape_string($kasacja);

?

Przepraszam, ale muszę wybadać teren, w Delphi czyli OP takie zabawy były akceptowalne smile.gif
nowotny
Cytat(seba22 @ 20.02.2008, 20:11:10 ) *
czy mogę wyżej w stylu

Możesz...
czachor
Cytat(l0ud @ 20.02.2008, 19:47:00 ) *
Może i AND użyte w warunkach działa, jednak polecam używania tego co wymieniłem wyżej czyli &&

Dlaczego?
l0ud
Cytat(czachor @ 20.02.2008, 21:06:57 ) *
Dlaczego?


Wiele już analizowałem skryptów, ale nigdy nie spotkałem się, żeby ktoś tego używał. Dla mnie 'standardem' jest używanie właśnie &&. Jeżeli jestem w błędzie, proszę o poprawę snitch.gif
czachor
Ja też używam &&, ale napisałem tak, bo seba22 o to pytał. W każdym razie AND też działa.
seba22
Czytałem wczoraj o tej procedurze.
Spoko, zabezpiecza SQL przed tak zwanymi zabawami ze składnią SQL.

Czy jest jakaś gotowa procedura zabezpieczająca przez tagami HTML i php?

Chodzi o całkowite wycięcie wszystkiego co zaczyna się <> i podobne które świadczą o możliwości grzebania.



Jeżeli nie ma gotowej to spoko, zajmiemy się tym ręcznie ale mówie pytam o wasze zdanie bo macie na pewno doświadczenie z tym.
l0ud
do html jest smile.gif

http://php.net.pl/manual/pl/function.htmlspecialchars.php

co do php, to się nie martw. Nie da się wykonać kodu od tak, o ile nie stosujesz eval()
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.