problem med att sätta absolut sökväg i php?

Här diskuteras programmering och utveckling
Användarvisningsbild
lennart
Inlägg: 70
Blev medlem: 20 okt 2006, 21:31
OS: Ubuntu
Utgåva: 18.04 Bionic Beaver LTS

problem med att sätta absolut sökväg i php?

Inlägg av lennart »

Hej jag håller på att trixar lite med php & mysql, har fastnat nu i flera dar med hur man anger sökvägar. Jag har en php sida som ligger i /var/www/gesallprov/admin/admin.php. Sen har jag en mapp som jag lägger till bilder i som ligger i /var/www/gesallprov/uploads. Problemet jag har är att jag har en till sida som ligger i /var/www/gesallprov/index.php som skall visa bilderna utifrån sökvägen som sparas i en databas, men det funkar inte när jag sätter min path som skall in i databasen $target_path = "/var/www/gesallprov/uploads/";. Bilden laddas upp på servern, och sökvägen till filen sparas som tex /var/www/gesallprov/uploads/bild.jpg, men sen när jag skall visa bilden utifrån en query som hämtar bildsökvägen, så visas ingen bild, utan istället dökvägen till den så som den lagrats i databasen? Skall tilläga att jag kan se bilden på min admin.php sida om jag anger relativ sökväg dvs $target_path = "../uploads", men då funkar det inte att se bilden på index.php. Någon som vet hur jag kan sätta sökvägen på ett vettigt sätt?
Användarvisningsbild
per9000
Inlägg: 931
Blev medlem: 07 maj 2007, 11:06
OS: Ubuntu
Utgåva: 23.04 Lunar Lobster
Ort: Västerås
Kontakt:

Re: problem med att sätta absolut sökväg i php?

Inlägg av per9000 »

en tanke:

I php får du ange filpath så som ditt system har det "/var/www/..."

I html får du tänka utifrån en utomstående betraktare:

säkvägen som stoppas ut i html

Kod: Markera allt

<img src="/img/bild.jpg" />
<img src="http://minsite.com/img/bild.jpg" />
motsvarar troligen båda "/var/www/img/bild.jpg"

och sökvägar som inte börjar med / i html är relativa hela bunten, med för och nackdelar.

HTH,

/Per
--
Per Erik Strandberg
Yet Another IT Consultant
eyerouge
Inlägg: 787
Blev medlem: 18 jun 2007, 03:44
OS: Ubuntu
Utgåva: 18.04 Bionic Beaver LTS
Ort: malmö
Kontakt:

Re: problem med att sätta absolut sökväg i php?

Inlägg av eyerouge »

Om du vill slippa ställa in PHP & MySQL i all oöndlighet och är ny på det kan du installera XAMPP så fixar den det mesta åt dig. Har själv aldrig haft problem med PHP:n i det paketet.

Edit: Lät som du inte talade om en egen serverconfig:
"Bilden laddas upp på servern, och sökvägen till filen sparas som tex /var/www/gesallprov/uploads/bild.jpg, men sen när jag skall visa bilden utifrån en query som hämtar bildsökvägen, så visas ingen bild, utan istället dökvägen till den så som den lagrats i databasen?"
Det är ofta ingen vits att du sparar hela sökvägen för varje bild: Din databas blir bara större. I exemplet ovan ska du t.ex. kanske inte spara " /var/www/gesallprov/uploads/" utan bara själv filnamnet. Sökvägen lägger du sedan själv till i scriptet när du genererar HTML:n för användaren. Det enda du då behöver ta från databasen är filnamnet.

Et sökvägen visas så som du beskriver skulle kunna bero på att du använder echo / print fel: Prova båda och prova med både '-tecken och "-tecken: Det ger helt olika resultat. Det låter som en småsak som du har fastnat i, inget du behöver ge upp på eller oroa dig för.
Bild
Användarvisningsbild
lennart
Inlägg: 70
Blev medlem: 20 okt 2006, 21:31
OS: Ubuntu
Utgåva: 18.04 Bionic Beaver LTS

Re: problem med att sätta absolut sökväg i php?

Inlägg av lennart »

Tackar för tipsen, har insett att jag får strukturera om lite i katalogstrukturen, för att få det att funka som jag vill.
Det är ofta ingen vits att du sparar hela sökvägen för varje bild: Din databas blir bara större. I exemplet ovan ska du t.ex. kanske inte spara " /var/www/gesallprov/uploads/" utan bara själv filnamnet. Sökvägen lägger du sedan själv till i scriptet när du genererar HTML:n för användaren. Det enda du då behöver ta från databasen är filnamnet.
Jag är inte så jättehemma på hur man optimerar sql databaser, men det låter ju vettigt, att bara spara filnamnet. Blir ju enklare sen kanske om man stuvar om i katalogstrukturen också. Antar att du menar att frågorna till databasen går snabbare om databasen är mindre? I sådana fall skall jag nog ta mig en översikt på resten av databasen, finns det några mer enkla tips som är bra att ha i bakhuvudet, när man håller på med php+mysql?
Skriv svar

Återgå till "Programmering och webbdesign"