Jump to content
GSForum - Segélyvonal

PHP kérdésem van


Recommended Posts

Posted

Az is_file attól a könyvtártól kezdve kezd dolgozni az iis-en, ahonnan futtatod a scriptet.

Legyen a könyvtárszerkezet a következõ:

test.php
/test
  valami.xyz
/test2
  test.php

Ha a test.php tartalma:

<?php 
if(is_file("test/valami.xyz"))
  die("ok");
else
  die("nonok");
?> 

, akkor a gyökérbõl futtatva 'ok', a test2-bõl futtatva 'nonok' lesz az eredmény.

A test2-bõl csak abban az esetben találja meg a fájlt, ha átírjuk az útvonalat:

if(is_file("../test/valami.xyz"))

Ez viszont csak a test2-bõl fut rendesen.

Következtetés: az iis nem szereti a relatív útvonalakat.

Posted

Értem!

 

Nagyon köszönöm a segítséget! :)

Posted

Kúl, ma is tanultunk valamit! :oké::istenvagy:

[OP]Destroy-man
Posted
Következtetés: az iis nem szereti a relatív útvonalakat.

Éppenséggel szereti, csak nem PHP-ból, hanem C#-ból:

 

Server.MapPath("mappa/file.nev");

megadással. ;)

Posted
The MapPath method maps the specified relative or virtual path to the corresponding physical directory on the server.
[OP]Destroy-man
Posted

Pontosan. De mivel az IIS egyik jó tulajdonsága, hogy a weblapok mindig más virtuális mappába kerülnek, így esélyed sincs másképp megadni neki a pontos útvonalat, ha épp szükséged lenne rá. ;)

 

 

 

:S

Posted

Csak ezzel ezt mondtad, hogy magától az ASP.NET sem tudja, hanem van neki függvénye erre. Hogy visszakanyarodjunk a PHP-ra: én úgy csináltam ezt, mintha PHP-ban lenne egy ilyen MapPath metóduson. Ilyen módon sosincs bajom az is_file() és hasonló dolgokkal. (Az alapot adhatja a DOCUMENT_ROOT vagy valami más fix pl. cross domain-es környezetben, ahol több lap megy ugyanarról a tárhelyrõl és pl. symlink()-elni kell.)

Posted

Na ismét nem tudok megoldani egy dolgot ezzel az IIS-el. Már kb 3 órája próbálkozok vele.

 

Lényeg egy pdf feltöltést akarok megcsinálni.

Adatbázisba szépen beleírj,de a pdf-et nem menti el.

 

Íme a kód:

if(isset($_POST['mentes'])){
    
$pdf=$_FILES['pdf']['name'];

$kit=".pdf";
$datum=hun_time();
$datum=$_SESSION['user']['ugyfel_id']."_".$datum;
$pdf = $datum.$kit;  
                    
$tmp_dir = $_FILES['pdf']['tmp_name']; 
                    
$pdf_mappa = "E:/web/xy/pdf/"; 

move_uploaded_file($tmp_dir, $pdf_mappa . $pdf);


$ins=dbQuery("INSERT INTO .........  ...... )");
                                         
closePopupRefresh();
        
}    

Posted

Van joga az IIS-nek írni abba a könyvtárba?

Posted

Gondolom igen.

Én hoztam létre a mappát.. és 777 az attribútoma.

Posted

$_FILES['pdf']['error']-ban mi van?

Posted

Próbáld meg:

if(!move_uploaded_file($tmp_dir, $pdf_mappa . $pdf)){
  print_r(error_get_last());
  die();
}

 

 

 

Posted

Erre ezt kapom:

 

Array ( [type] => 8 [message] => Undefined index: pdf [file] => E:\web\xy\pages\pdf_up.php [line] => 77 )

 

 

77-ik sorban ez van:

$tmp_dir = $_FILES['pdf']['tmp_name'];

Posted

A <form> elemre rá van adva az enctype="multipart/form-data"?

Posted

azt hiszem elásom magam szégyenemben ... :(

Posted

Én is szeretem a hasonló kis hibákat, amire rámegy a fél nap :D

Posted

Köszönöm szépen :)

Posted

Mi a rákért ad vissza az strlen() 2-t egy "á" karakterre? :mérges: Semmi ilyet nem találtam a leírásban.

Posted

Jó eséllyel duplabyteos. ;) Az mb_strlen() 1-et fog visszadni.

 

Érdemes mindig lefuttatni az mb_internal_encoding() függvényt (mb_internal_encoding("UTF-8")), és az összes sztringfüggvényből az mb_ kezdetűeket használni.

Posted

Hm, lehet, hogy mégsem fogom átrakni a játéknetet utf-8-ra. Pedig már gondolkodtam rajta...

Posted

Nincs vele semmi gond, csak oda kell figyelni ezekre. Adatbázis+tábla+attribútum+header+internal encoding+file encoding+meta legyen UTF-8, és persze a megfelelő függvény legyen mindig használva.

Azt mondjuk tuti nem csinálnám, hogy egy meglévő rendszert kattintanék át UTF-8-asra csak azért, mert. :)

Posted

Nos, igen, csak közben ezerrel SEO-zunk, és a "Mesrerek" szerint az UTF-8 is jó, mert a latin-2 izé.

 

:facepalm:

 

Komolyan mondom, ennél nagyobb kuruzslás, mint a SEO, nincs még egy az internet környékén... Van mondjuk 10 alapszabály, amit ha betartasz az oldal fejlesztése során, akkor az jobbá teszi az oldaladat, ezt a 10 szabályt viszont akár a Google, akár a Yahoo, akár bármelyik ilyen oldaltesztelős webszolgáltatás megmondja neked. Ha ezekben már A+-os az oldal, onnantól kezdve pénz és kapcsolatrendszer kérdése...

 

(Jut eszembe, FUUU smileyt felrakni! Nem elfelejteni!)

Posted

Egyébként ez a latin2 --> UTF-8 csere elég hasonló volna ahhoz a szíváshoz, mint amikor egy 4+ éves webáruházat alakítasz át beszédes URL-ek használatára. Csak az összes fájlba kell beletúrni, a régi URL-képzõ függvényeket újraírni, a régi $_GET / $_POST kezelõ függvényeket újraírni, majdnem az összes formot és formkezelõt átalakítani, a terméklistázós szûrés dolgot megtámogatni, és megterhelni a boltot letöltésenként +2-3 lekérdezéssel, hogy kiderítsd, hogy mi a franc a kapott kulcsszó és ennek megfelelõen mit kell betölteni vagy átirányítani máshova. Átirányításnál figyelni, hogy hogy irányítasz át, mert ugye van 200, 301, 302 + a 404, ami nem átirányítás, de néha ki kell küldeni, mert az jó.

 

Anyám borogass, egy napig állni fog a bolt, amíg beélesítem, és utána indul a szorongás, hogy elba... ltáztunk-e valamit, mit szól a Google, merre indul a pagerank stb.

 

FFFFFUUUUUUU!

 

Posted
(Jut eszembe, FUUU smileyt felrakni! Nem elfelejteni!)

Ugye, hogy ugye? :lol:

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...