Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: $PATH_TRANSLATED
Forum PHP.pl > Forum > PHP
Sh4dow
Mam problem z ładowaniem plików poprzez formularz. Nie ukrywając ucze sie tego wiec zaczynam przepisywac kody z ksiazki i modyfikowac je. Oto kod do formularza (a.php)
[php:1:74a8460f4a]<?php

echo"<form action="b.php" method="post" enctype="multipart/form-data">
Wyślij plik: <input type="file" name="thefile"><br><br>
<input type="submit" name="Submit" value="Wyślij">
</form>";
?>[/php:1:74a8460f4a]
Oraz plik do obsługi przesyłania pliku (b.php)

[php:1:74a8460f4a]<?php
$aErrors = "";

if ( !empty( $_FILES['thefile']['name'] ) ) // nie wybrano pliku
{
if ( ( $_FILES['thefile']['type'] == "image/gif" ) ||
( $_FILES['thefile']['type'] == "image/pjpeg" ) ||
( $_FILES['thefile']['type'] == "image/jpeg" ) )
{
if ( $_FILES['thefile']['size'] < ( 1024 * 100 ) )
{
$aCurBasePath = dirname( $PATH_TRANSLATED );
$aNewName = $aCurBasePath . "/uppics/" .
$_FILES['thefile']['name'];
$file = $_FILES['thefile'];
copy( $file , $aNewName );
}
else
{
$aErrors .= "Za duzy plik !!!";
}
}
else
{
$aErrors .= "Plik nie jest typu gif ani jpeg";
}
}
else
{
$aErrors .= "Nie wybrano pliku";
}
if ( $aErrors != "" )
{
print( "<b>Wystapil blad</b>: $aErrors<br>" );
}
else
{
print( "Przeslany plik:<br><br>" );
print( "<img src="uppics/".$_FILES['thefile']['name'] border="0">" );
}
?>[/php:1:74a8460f4a]

Jak juz czytalem niektore posty ze względu na register_globals kozystalem z $_FILES, lecz nie wiem co ma byc ze zmienna $PATH_TRANSLATED poniewaz wyskakuje mi komunikat
Cytat
Notice: Undefined variable: PATH_TRANSLATED in /var/www/html/test/b.php on line 12

Notice: Array to string conversion in /var/www/html/test/b.php on line 16

Warning: copy(Array) [function.copy]: failed to create stream: No such file or directory in /var/www/html/test/b.php on line 16

Czy ktos moze mi pomoc i powiedziec co jest nie tak ?
Dane servera (moze pomoze):
Linux MDK 9.1
Apache 2.0
php 4.3.1
DeyV
Do zmiennej $PATH_TRANSLATED przy register globals= off powinniśmy sie odwoływać poprzez $_SERVER[ 'PATH_TRANSLATED' ] .
a jest w niej przekazywane:
Cytat
Filesystem- (not document root-) based path to the current script, after the server has done any virtual-to-real mapping.


Reszta komunikatów to zwykłe notice (notatki) kóre najlepiej jest po prostu wyłaczyć - w php.ini -> error_reporting
kurtz
Hej
Cytat
Reszta komunikatów to zwykłe notice (notatki) kóre najlepiej jest po prostu wyłaczyć - w php.ini -> error_reporting
Ekhem - notice to raczej "ostrzeżenie" - to bardziej oddaje charakter. Po drugie akurat w tym wypadku przekazuje dosc istotne informacje - w linii 16 np kontekst tablicy zostanie zmieniony na string (to znaczy na sile zastapi sie jedno drugim) - co wcale nie musi sie okazac tym czego tygrysy pragna ;) I rzeczywisice w linii 15 odwolujesz sie do $_FILES['thefile']; a pewnei bardziej chcialbys do samego pliku - czyli $_FILES['thefile']["tmp_name"];

Wg mnie E_NOTICE (czyli wlasnie tego typu ostrzezenia) ucza dobrych nawykow w programowaniu - sprawdzania zmiennych, zachowywania regul etc. Jesli kiedys przyjdzie komus poprawiac po kims kod (albo chocicaz go zrozumiec) zaswiadczam ze lepiej sie "czyta" taki ktory byl pisany uzgledniajac E_NOTICE. Trudniej wowczas rowniez o blad, a istniejace latiwej wychwycic i poprawic.

Pozdrawiam
cahe
Skoro notice to ostrzeżenie, to co znaczy warning? :-)...

Notice to raczej powiadomienie ;-)... a dokładnie:

Cytat
notice (słownik ogólny Ectaco-Poland)
v,
1 wiadomość
2 wzmianka
3 ostrzeżenie
4 awizo
5 ogłoszenie
6 obwieszczenie
7 wywieszka
8 wypowiedzenie posady
9 uwaga
10 spostrzeżenie
11 recenzja
12 zauważyć
13 pokapować się
14 uwaga
15 zwracać uwagę
16 dostrzec
17 obserwować
18 dojrzeć
19 domiarkować się


Czyli ostrzeżenie także, ale ponieważ

Cytat
warning (słownik wojskowy)
[‘wnıη] s ostrzeżenie; uprzedzenie; wypowiedzenie (posady);
advance ~ ostrzeżenie uprzedzające, wczesne ostrzeganie;
early ~ wczesne ostrzeganie;
local ~ ostrzeżenie lokalne;
(minimum) ~ time minimalnyczas ostrzegania;
navigational ~ ostrzeżenie nawigacyjne;
nuclear strike ~ ostrzeżenie przed atakiem jądrowym;
strategic ~ ostrzeżenie strategiczne; adj ostrzeżony;
~ device urządzenie ostrzegawcze;
~ light światło alarmowe;
~ order rozkaz przygotowawczy;
~ radar radiolokator wczesnego ostrzegania


To raczej to drugie (po co autorzy mieli by sie powtarzac :-))
kurtz
Hej
Cytat
Skoro notice to ostrzeżenie, to co znaczy warning? :-)...
Uwaga ;) - najbarizdej by pasowalo.wwg mnie


Pozdrawiam
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.