![]() |
Hej!
Jag är ny på php, och försöker få en logga att visas beroende på vilken dag det är, t.ex. julafton osv... kan inte få det att funka. Hittade ett script och beskrivning här: http://www.thisismyurl.com/tutorials...o-on-holidays/ Tyckte jag gjorde som det stod, det här är koden jag använde: <?php if(file_exists('/grafix/ap_logo_'.date('Y-m-d').'.gif')) { $file = date('Y-m-d'); } else { $file = 'standard'; } ?> <img src='/grafix/ap_logo_<?php echo $file;?>.gif' alt='AlternativePhotography logo <?php date('Y-m-d');?>'/> Resultatet är bara en text sträng: AlternativePhotography logo <?php date('/> Provade även dubbel-fnuttar på ímg taggen: [img]/grafix/ap_logo_<?php echo $file;?>.gif[/img]"/> Men det funkade inte heller... Har döpt loggorna till: ap_logo_standard.gif ap_logo_2009-05-31.gif ap_logo_2009-06-01.gif ap_logo_2009-06-01.gif Sidan jag leker med är här: http://www.alternativephotography.com/about.html Skriptet är längst ner, under alla olika loggor, under rubriken "Test". Någon som vet vad felet är? Tacksam för hjälp! |
Kod:
// Mappen med bilder |
Hmmm... jag är en php-nollla, erkänner jag direkt... nu gjorde jag så här:
<?php // Mappen med bilder $folder = '/grafix/'; // Filändelse $ext = '.gif'; // Datumet idag $date = date('Y-m-d'); if(file_exits($image.$date.$ext)) { $file = $image.$date.$ext; } else { $file = $image.'ap_logo_standard'.$ext; } echo '[img]'.$file.'[/img]';?>'/> och bara detta visas: ';?>'/> |
Tror det är något fel på öppnings och stängningstaggen för php?
Dokumentet heter .html, borde det heta .php istället...? Använder html transitional. |
Citat:
|
Nu provade jag det här:
<?php $date = date('Y-m-d'); if(file_exits('/grafix/ap_logo_'.$date.'gif')) { $file = '/grafix/ap_logo_'.$date.'gif'; } else { $file = '/grafix/ap_logo_.standard.gif' } ?> <img src='<?php echo $file;?>' alt="AlternativePhotography logo"/> Och nu visas alt-taggen i alla fall... men vad gör jag för fel? |
Du har missat en ; på rad 10 ;)
Kod:
$file = '/grafix/ap_logo_.standard.gif'Kod:
$file = '/grafix/ap_logo_.standard.gif'; |
Tack för ditt tålamod... men funkar inte fortfarande... nu ser koden ut så här:
<?php $date = date('Y-m-d'); if(file_exists('/grafix/ap_logo_'.$date.'.gif')) { $file = '/grafix/ap_logo_'.$date.'.gif'; } else { $file = '/grafix/ap_logo_standard.gif'; } ?> [img]<?php echo $file;?>[/img] och bara alt texten visas fortfarande... |
ska datumet kanske vara i annat format? t.ex. yyyy-mm-dd? Filnamnen är så här:
ap_logo_2009-05-31.gif och har även sparat en så här: ap_logo_09-05-31.gif |
date("Y-m-d") producerar 2009-05-31 t.ex så det är redan rätt. Jag körde koden ovan och fick helt korrekt.
Citat:
Däremot behöver du ändra den här raden: Citat:
Citat:
|
Ok, har ändrat, men funkar fortfarande inte... nu ser koden ut så här:
<?php $date = date('Y-m-d'); if(file_exists('grafix/ap_logo_'.$date.'.gif')) { $file = 'grafix/ap_logo_'.$date.'.gif'; } else { $file = 'grafix/ap_logo_standard.gif'; } ?> [img]<?php echo $file;?>[/img] Är det någon punkt fel, eller något? Och, en korkad fråga... behöver jag installera php på servern eller något sånt? |
Nej, all kod ska vara rätt nu, funkar här rakt av.
Ja, du behöver köra det genom en server med php Testar du på ett webhotell finns det med största sannolikhet php, dubbelklickar du bara på din testfil i utforskaren eller nåt så kommer det inte att funka. |
Här är testsidan utan en massa annat skräp:
http://www.alternativephotography.com/test.html |
Har bluehost... och har lagt upp filen där:
http://www.alternativephotography.com/test.html |
Det står att bluehost har php:
PHP version 5.2.9 Någon som blir klokare? |
Citat:
|
Citat:
|
Jag igen... hoppas någon fortfarande orkar läsa! Döpte om filen till .php... och nu funkar det!
http://www.alternativephotography.com/test.php Problemet är bara att hela sajten heter .html och det är över 1000 sidor (ja, jag vet!)... hur kan jag få php att funka på en html sajt... går det? Man kan tydligen ändra .htaccess filen på något sätt... hur? Php infon på servern ser ut så här: http://www.alternativephotography.com/test_php.php |
Citat:
|
Citat:
|
Hej!
Ja, en CMS kanske vore nåt! Så här ser det ut nu... (funkar ej) RewriteEngine on # Use PHP5 as default AddHandler application/x-httpd-php5 .php AddType application/x-httpd-php .php .html RewriteCond %{HTTP_HOST} ^alternativephotography.com$ [OR] RewriteCond %{HTTP_HOST} ^www.alterativephotography.com$ RewriteRule ^(.*)$ "http\:\/\/www\.alternativephotography\.com\/$1" [R=301,L] |
Lägg på .html på den här raden istället då
AddHandler application/x-httpd-php5 .php .html |
Citat:
Typo? :) |
Hej igen! Tack så mycket för ert tålamod!
När jag la till det här: AddHandler application/x-httpd-php5 .php .html Så funkade php scriptet (!!!) men mina serverside includes slutade funka, och headerfilen är en include... När jag rättade typot fick jag ett "loop error" och hela sajten slutade funka. Fattar inte mycket av det här. Ska jag ge upp? |
Citat:
Finns säkert någon som kan sätta sig in i det och lösa alla dina många problem! |
Det går ju alldeles utmärkt att länka in en php-fil i en img-tagg, typ
Kod:
<img src="/client/images/logo.php">Det går säkert att skriva en urlrewrite-regel som skriver om /client/images/logo.png till den sökvägen också om man kan urlrewriting. Då slipper du ändra på andra ställen ö.h.t.! :) Poängen här är att ha logiken som rör bilden i en fil och inte behöva kladda i andra filer som använder den. |
Halloj,
Önskar jag förstod hur du menade. Första gången jag försöker mej på php, och server grejor kan jag inget om. Känns som om jag är så nära, så det känns trist att ge upp... Bilden ligger i en fil bara, och det är en header fil som jag skrivit som en server side include, så det är på ett ställe, men behöver få både php och includes att funka... Det är en hobbysajt, som inte drar in några pengar, så har inte riktigt råd att betala någon, annars är det en bra ide. |
Två frågor: :)
Vad har du den sista raden i .htaccessen till? RewriteRule ^(.*) http://www.alternativephotography.com/1 [R=301,L] Vad är det för file extensions på dina server side includes? |
PHP verkar inte vara aktiverat för html-filer på ditt webbhotell (dvs. filer som slutar på .html).
Har du testat att köra enklare php-funktioner? Vad händer om du helt enkelt bara skriver: <?php echo "Dagens datum är ".date("Y-m-d"); ?> Om php är aktiverat så skulle denna kod visa texten: "Dagens datum är 2009-06-01". Annars får du testa att byta namn på filen till "test.php". Om det fortfarande inte fungerar så skulle jag höra av mig till webbhotellet och fråga hur man aktiverar PHP för ditt konto. Du kan även testa att lägga en ".htaccess" i huvudmappen på ditt webbhotell som talar om för webbservern att vissa filändelser skall exekvera (stödja) PHP-kod. Detta gör du genom att skapa en ny fil med innehållet: AddType application/x-httpd-php .php .html .htm Jag lade upp en sån fil här: http://www.objx.se/htaccess.zip |
Hej!
Tack för hjälpen hittills allesammans. Mina includes ser ut så här: <!--#include virtual="/header.txt" --> Jag hade ett annat domännamn förut, och när jag bytte gjordes en redirect, jag antar att 301 hänger med sedan dess... antar att jag kan ta bort det? För att summera: Sidorna/sajten är skriven i html, det är för stort jobb att ändra på, så det jag behöver är att lägga till lite php i header.txt filen som visar en logga för varje dag. Sen behöver jag få sajten att fatta php i .htaccess filen. Är vi på rätt spår här? När jag la in KarlRoos förslag: AddHandler application/x-httpd-php5 .php .html Så funkade php, men mina includes SLUTADE funka. och när jag rättade typot här: RewriteCond %{HTTP_HOST} ^www.alterativephotography.com Till: RewriteCond %{HTTP_HOST} ^www.alternativephotography.com så slutade hela sajten funka... Så här ser hela ut: RewriteEngine on # Use PHP5 as default AddHandler application/x-httpd-php5 .php AddType application/x-httpd-php .php .html RewriteCond %{HTTP_HOST} ^alternativephotography.com$ [OR] RewriteCond %{HTTP_HOST} ^www.alterativephotography.com$ RewriteRule ^(.*)$ "http\:\/\/www\.alternativephotography\.com\/$1" [R=301,L] Frågorna som kvarstår är: -Behöver jag "Rewrite" koden - eller är den bara till för att redirecta (en funktion jag inte behöver) -Hur kan jag få php OCH includes att funka på samma gång? Tack så mycket alla! |
edit: oj då, fanns det en sida två också. då var det inget..
|
FELPOST.
|
| Alla tider är GMT +2. Klockan är nu 23:59. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson