Avatar billede bgjensen Nybegynder
12. juli 2002 - 18:19 Der er 28 kommentarer og
2 løsninger

PHP virker hos Cliche.dk

Alt det PHP jeg har på min side virker ikke på mit webhotel (hos www.cliche.dk) men hvis jeg lægger det hos Hosted4Free virker det fint nok!

PHP Script som ikke virker hos cliche.dk:

<A HREF="test.php?fil=gron.jpg">Gr&oslash;n</A><BR>
<A HREF="test.php?fil=rod.jpg">R&oslash;d</A>
<?
if ($fil) echo"<IMG SRC=$fil>";
?>

(Cliche) Virker ikke:  http://www.bgjensen.dk/test.php
(H4F) Virker: http://www.bgjensen.h4f.dk/test.php

Er der nogle som ved hvorfor det ikke virker hos cliche.dk

mvh
Bjørn Jensen
Avatar billede acid-head Nybegynder
12. juli 2002 - 18:26 #1
Neej, det er ikke til at svare på, det har jo noget at gøre med serveren hvor du har dit webhotel... Du skal prøve at snakke med cliche.dk ?
Avatar billede bgjensen Nybegynder
12. juli 2002 - 18:30 #2
Jeg har skrevet dem en mail igår (torsdag) men de har ikke svaret (det gør de nok snart :o)
Avatar billede hien Nybegynder
12. juli 2002 - 18:31 #3
Problemet er at Cliche.dk ikke har slået register_globals til On!!
Avatar billede hien Nybegynder
12. juli 2002 - 18:32 #4
Ups tror jeg da :)
Avatar billede kimg Nybegynder
12. juli 2002 - 20:35 #5
Det her virker

Kim

?>
<A HREF="111.php?fil=gron.jpg">1</A><BR>
<A HREF="111.php?fil=rod.jpg">1</A>
<?
if ($fil){ echo"<img src='$fil'>";}
?>
Avatar billede kimg Nybegynder
12. juli 2002 - 20:37 #6
selvfølgelig med test.php, i stedet for 111.php
det var fordi jeg testede hos cliche

Kim
Avatar billede brevkasserne Nybegynder
13. juli 2002 - 00:25 #7
Skriv:

<?
<A HREF="111.php?fil=gron.jpg">1</A><BR>
<A HREF="111.php?fil=rod.jpg">1</A>
<?
if ($_GET['fil']){ echo"<img src='$fil'>";}
?>
Avatar billede intel4004 Novice
13. juli 2002 - 00:28 #8
Kan det ikke skyldes at du skal skrive "<?php" som start-tag???
Avatar billede brevkasserne Nybegynder
13. juli 2002 - 00:28 #9
Det er fordi de køre den nyeste version af PHP som af sikekrhedsmæssige grunde ikke har sat register_globals til on. Væn dig til den nye version af PHP, den er bedre i længden...
Avatar billede brevkasserne Nybegynder
13. juli 2002 - 00:30 #10
det skyldes ikke at du ikke skriver <?php foran... kører selv hos cliche...
Avatar billede intel4004 Novice
13. juli 2002 - 00:31 #11
Har læst at nogle steder vil de(serveren) have den fulde php-start-tag, du bør derfor vænne dig til at skrive <?php :)

Intel4004
Avatar billede brevkasserne Nybegynder
13. juli 2002 - 00:32 #12
ja, som intel4004 siger er de nu go' skik at skrive php i alle start-tag...
Avatar billede intel4004 Novice
13. juli 2002 - 00:33 #13
nå ok...så er det sikkert problemet med de nye sikkerheds-optimeringer i PHP 4.2.1.
Avatar billede intel4004 Novice
13. juli 2002 - 00:38 #14
Dvs. at variabler fra en html-form heller ikke blot bliver sendt direkte men skal hentes ved vha. af f.eks. $_REQUEST['name']
Avatar billede brevkasserne Nybegynder
13. juli 2002 - 00:39 #15
ja, henholdsvis $_GET['name'] eller $_POST['name']... afhængig hvad man sender med...
Avatar billede bgjensen Nybegynder
13. juli 2002 - 10:40 #16
Nu har jeg lavet det om til:

<A HREF="test.php?fil=gron.jpg">Gr&oslash;n</A><BR>
<A HREF="test.php?fil=rod.jpg">R&oslash;d</A>
<?php
if ($_GET['fil']){ echo"<img src='$fil'>";}
?>

Det virker også! (eller hvad??) fordi når man klikker på et af linkene loader siden igen, men der kommer bare en boks op med et rød kryds (billed er der ikke) men billederne ligger i samme mappe??
Avatar billede intel4004 Novice
13. juli 2002 - 10:49 #17
Du skal sætte
$fil = $_GET['fil'];

eller skrive:

if ($_GET['fil']){ echo"<img src=$_GET['fil']></img>";}

Intel4004
Avatar billede intel4004 Novice
13. juli 2002 - 10:53 #18
Jeg plejer at bruge:

IF (!empty($_GET['fil'])): $fil = $_GET['fil']; EndIf;

(en anden brugbar IF-syntax, men man kan vel også bruge den anden...)
Avatar billede intel4004 Novice
13. juli 2002 - 10:58 #19
Eller måske:

IF (empty($_GET['fil'])) {
    $_GET['fil'] = 'Standard string-værdi'; }

$fil = $_GET['fil']; // $fil får standard værdi under alle omstændigheder.

// Brug $fil her...
Avatar billede bgjensen Nybegynder
13. juli 2002 - 11:05 #20
Hvis jeg sætter den til:
if ($_GET['fil']){ echo"<img src=$_GET['fil']></img>";}
Får jeg en fejl:
parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING

Og den anden du skrev loader siden, men ikke billedet!
Avatar billede bgjensen Nybegynder
13. juli 2002 - 11:08 #21
intel4004 --> Lige et sp til det du skrev med at når man sender via en form:
Jeg har et login script, som heller ikke virker efter jeg er flyttet til cliche: Jeg sender med "method=post", 2 værdier "username og userpass" når jeg så kalder dem igen hvad skal der så sættes foran?? _REQUEST??
Avatar billede intel4004 Novice
13. juli 2002 - 11:20 #22
ja...jeg bruger $_REQUEST men man kan også bruge $HTTP_POST_VARS

altså $_REQUEST['name'] eller $HTTP_POST_VARS['name'], og sandsynligvis også $_POST['name'] (har aldrig brugt den sidste)...

Meld lige tilbage om det virker hos cliche.dk, har planer om at oprette et webhotel - det er sku da fuldstændig billig!!!!

Intel4004
Avatar billede intel4004 Novice
13. juli 2002 - 11:31 #23
Min erfaring er at print og echo og andre "kommandoer" ikke kan lide de superglobale arrays. Det er også god kodeteknik lige at assigne dem som "rene" variabler første.

Altså:

IF (empty($_GET['fil'])) {
    $_GET['fil'] = 'Standard string-værdi'; }

$fil = $_GET['fil;

print '<img src='.$fil.' ></img>'; //lidt anderledes

Intel4004
Avatar billede bgjensen Nybegynder
13. juli 2002 - 11:31 #24
Jeg tror det virker jeg får bare en fejl længere nede i mit script nu, men det skal sikkert også bare tilpasses Cliche's webhotel!
Avatar billede intel4004 Novice
13. juli 2002 - 11:35 #25
UPS!:

Fejl i: $fil = $_GET['fil;

Skal klart nok være: $fil = $_GET['fil'];

Note: Jeg bruger altid en standard string-værdi hvis siden bliver loadet uden parametre. Man kunne også bruge:

IF (empty($_GET['fil'])) {
    die("Fejl: Mangler variabel til script!"); }

Men den tror jeg ikke bliver brugt så meget...
Avatar billede bgjensen Nybegynder
13. juli 2002 - 11:37 #26
kimg --> Du skriver at:
<?
<A HREF="111.php?fil=gron.jpg">1</A><BR>
<A HREF="111.php?fil=rod.jpg">1</A>
<?
if ($fil){ echo"<img src='$fil'>";}
?>
Virker?? Og at du har testet det hos cliche?? Men det virker ikke hos mig??
Ligger du på en Windows, eller Free BSD server??
Avatar billede intel4004 Novice
13. juli 2002 - 11:48 #27
Hvis cliche.dk kører med PHP 4.2.1 og har register_globals til on vil kimg's forslag ikke fungere.


Virker min metode ikke???
Avatar billede bgjensen Nybegynder
13. juli 2002 - 12:07 #28
Jo den virker!
Avatar billede intel4004 Novice
13. juli 2002 - 12:56 #29
Rart at høre...jeg ser mig selv som lidt ny indenfor PHP selvom jeg synes jeg hægter hurtigere på end jeg havde regnet :)

Takker for point.

Intel4004
Avatar billede invisibleman Nybegynder
13. juli 2002 - 21:10 #30
Som et alternativ kan man selv slå register globals On via ini_set():

<?php
    ini_set("register_globals", 1);
?>

*altid* brug <?php ?> da short_open_tag ikke altid er On. Personligt sætter jeg det altid til Off på min egen server for at være sikker på at jeg ikke glemmer 'php'..

Man kan også bruge flg. hvis man kun ønsker at få f.eks. $_GET variabler som "globals":

<?php
    extract($HTTP_GET_VARS, EXTR_OVERWRITE);
?>

eller $_GET, men $HTTP_GET_VARS er mere sikker på gamle versioner af PHP.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester