Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: skomplikowana weryfikacja if elese ? problem
Forum PHP.pl > Forum > Przedszkole
boya
Witam
Pisze skrypt dodawania obrazkow do galeri z nieco zaawansowana weryfikacja
oto ta weryfikacja

  1. <?php
  2. $plik = $_FILES['file']['name'];
  3. $nazwa = $_SESSION['login'];
  4. //puste pola
  5. if (($kat == '') || ($opis == ''))
  6. {
  7. print(&#092;"Nie wypełniłes wymaganych pól\");
  8. }
  9. //istnienie katalogu o nazwie usera
  10. elseif (!is_dir(foto/$nazwa)) 
  11. //i tu sie rozchodzi o ten wykrzyknik przed is ale cos sie wysypalo i go nie widac
  12. przez niego skrypt zatrzymuje sie w tym miejscu
  13. {
  14. //tworzenie katalogu
  15. mkdir (&#092;"foto/$nazwa\");
  16. chmod(&#092;"./foto/$nazwa\", 0777);
  17. }
  18. //sprawdzanie czy plik juz istnieje
  19. elseif (is_file(&#092;"./foto/$nazwa/$plik\"))
  20. {
  21. (&#092;"Plik o podanej nazwie już istnieje !\");
  22. }
  23. else
  24. {
  25. //przejscie do uploadu i miniaturyzacji
  26. echo &#092;"wszystko ok\";
  27. }
  28. ?>


tak jak napisalemw wyzej rozchodzi sie o '!' jak go usune wszystko dziala ok tylko katalog sie nie tworzy...i juz kombinuje nad tym spora godzinke jak to ulozyc moze ktos mi pomoze ?

pozdrawiam
scanner
Brak Ci apostrofu lub cudzysłowa w linii 10.
boya
Dobrze jest smile.gif przynajmniej w tej postaci u mnie działa ale tu widocznie ! jest zastepowany znakiem "!"

chodzi mi o ulozenie warunkow...
scanner
A ja mam w nosie Twoje warunki...
Czytaj co się do Ciebie pisze...

Cytat
  1. <?php
  2. elseif (not is_dir(foto/$nazwa)) 
  3. ?>
popraw na
  1. <?php
  2. elseif (not is_dir(&#092;"foto/\".$nazwa)) 
  3. ?>
boya
Ale to co ja napisalem bylo dobrze ;]
A teraz poprawione na twoje nie startuje ;/
kszychu
Co znaczy kurna nie startuje?! Człowieku, podaj kod i błędy jakie Ci zwraca!
boya
Prosze bardzo
  1. <?php
  2. if costam {
  3. }
  4. elseif (not is_dir(&#092;"foto/\".$nazwa)) {
  5. }else{}
  6. ?>

blad w gdzie jest "elseif (not is_dir("foto/".$nazwa)) {"

a ja napisalem tak
Kod
if costam {
}
elseif (!is_dir(foto/$nazwa)){
}
else {}


i dziala...i kuzwa mowie ze chodzi mi o ulozenie warunkow a nie o cudzyslowia itp.
sf
Cytat(boya @ 2004-07-27 14:55:33)
Ale to co ja napisalem bylo dobrze ;]
A teraz poprawione na twoje nie startuje ;/

Nie było tongue.gif Włącz sobie warningi i notice, a zobaczysz...

Twoj kod wyrzuca bledy :
Notice: Use of undefined constant foto - assumed 'foto' in D:\www\test\cos.php on line 11

Warning: Division by zero in D:\www\test\cos.php on line 11

Po naprawieniu stworzyl mi katalog... wiec nie chodzi o warunki bo sa dobre.

BTW musi byc katalog foto stworzony... wlacz sobie wykrywanie waringow!
boya
jak bym byl adinem to bym sobie wlaczyl tongue.gif

napisalem tak:
Kod
$plik = $_FILES['file']['name'];
$nazwa = $_SESSION['login'];
//katalog
if (is_dir(foto/$nazwa)){
}else{
mkdir ("foto/$nazwa");
chmod("./foto/$nazwa", 0777);
}
if (($kat == '') || ($opis == ''))
{
print("Nie wypełniłe&para; wymaganych pól !");
echo"$plik";
}
elseif (is_file("./foto/$nazwa/$plik"))
{
print("Plik o podanej nazwie już istnieje !");
}
else
{
echo "wszystko ok";
}


i dziala...mozna zamknac temat chyba ze ktos ma jeszcze jakies ale aaevil.gif
kszychu
Posłuchaj się starszych, i uwierz, że parametrem funkcji is_dir() jest WYRAŻENIE. To co podał scanner jest wyrażeniem, to, co próbujesz Ty tam wsadzić, koło wyrażenia nawet nie leżało.
Tak więc daj się przekonać, że twój zapis jest błędny.
Zapodaj jeszcze łaskawie komunikat błędu, który dostajesz.
sf
error_reporting mistrzu tongue.gif
boya
bardzo prosze

Parse error: parse error in c:\apache\htdocs\index.php on line 2

takze ja uzywam swojego:
  1. <?php
  2. if (is_dir(foto/$nazwa)){
  3. ?>


pozdrawiam
kszychu
Myślę, że zrobię wszystkim przysługę jak to zamknę.
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.