Toon posts:

[PHP] phpencode -> forbidden, no permission meer

Pagina: 1
Acties:
  • 61 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik gebruik de volgende regels in me php bestand:

$urltemp= "product.php?soort=$soort&naam=$product[0]&latijn=$product[1]";
$url= urlencode($urltemp)." target=Product";
....
printf("<td><a href=%s>%s</a></td>", $url);

Als ik $urltemp gebruik in de printf regel, pakt ie hem wel, maar is de url niet volledig omdat er spaties in $product[1] voorkomen.

Dit wilde ik oplossen door urlencode te gebruiken, maar dan krijg ik de melding:

You don't have permission to access /Indros/indros/product.php?soort=vitelle&naam=Ananas&latijn=Ananas+Comosus on this server.

Alle bestanden staan in zelfde map als product.php

Weet iemand hoe ik dit kan oplossen?

  • Grum
  • Registratie: Juni 2001
  • Niet online
dit is geen php maar html

gewoon ""'s om je href-target

<a href="link met spaties erin">

Verwijderd

Topicstarter
Op donderdag 23 mei 2002 12:04 schreef Grum het volgende:
dit is geen php maar html

gewoon ""'s om je href-target

<a href="link met spaties erin">
Als je niet weet waar ik het over heb, reageer dan niet please... Dit is dus wel PHP

  • Martijn02
  • Registratie: September 2000
  • Laatst online: 10:09

Martijn02

/* No Comment */

Ik vind dat je knap agressief reageert, en ik heb het idee dat je zelf ook niet zo'n goed idee heb waar je het over hebt...

Die spatie zit wel in de URL, maar niet in de $product[1]dat zou je kunnen oplossen door A href="%s" te kunnen gebruiken.

Wat je ook kan zorgen dat je spatie uit je URL verdwijnt... Als hij in je $urltemp zou voorkomen zou hij door de urlencode vertaald worden naar +, dus daar zit hij niet...
PHP:
1
<?$url= urlencode($urltemp)." target=Product";//                         ^= Daar zit je foute spatie?>

Verwijderd

Topicstarter
Op donderdag 23 mei 2002 12:24 schreef Martijn02 het volgende:
Ik vind dat je knap agressief reageert, en ik heb het idee dat je zelf ook niet zo'n goed idee heb waar je het over hebt...

Die spatie zit wel in de URL, maar niet in de $product[1]dat zou je kunnen oplossen door A href="%s" te kunnen gebruiken.

Wat je ook kan zorgen dat je spatie uit je URL verdwijnt... Als hij in je $urltemp zou voorkomen zou hij door de urlencode vertaald worden naar +, dus daar zit hij niet...
PHP:
1
<?$url= urlencode($urltemp)." target=Product";//                         ^= Daar zit je foute spatie?>
Ik heb dat hele target gedeelte weggehaald, maar dat werkt ook niet helaas :(
Laad de pagina dat in dezelfde frame met dezelfde foutmelding

Was dat een agressieve reactie?? Ok sorry...maar antwoord sloeg nergens op

  • Martijn02
  • Registratie: September 2000
  • Laatst online: 10:09

Martijn02

/* No Comment */

Geef de output van je <A href=....> eens?

Heb even geprobeerd, heb de code ff overgenomen en aangepast dat het werkt...
PHP:
1
<?$urltemp= "product.php?soort=$soort&amp;naam=xxxxx&amp;latijn=yyy yyy yyy";$url= urlencode($urltemp)." target=Product";printf("<td><a href=%s>%s</a></td>", $url, $url); //<= 2e $url heb ik even toegevoegd anders klopt de syntax niet?>

Dat print dit als resultaat
code:
1
<td><a href=product.php%3Fsoort%3D%26naam%3Dxxxxx%26latijn%3Dyyy+yyy+yyy target=Product</a></td>

En ik denk dat het hij nu gaat proberen om de file:

product.php%3Fsoort%3D%26naam%3Dxxxxx%26latijn%3Dyyy+yyy+yyy

op te vragen, en dat je daar geen rechten toe hebt is niet meer dan logisch, zo'n smerige naam :)

Als ik jou was, en ik begrijp je bedoeling goed zou ik het als volgt doen...
PHP:
1
<?$url = "product.php" .       "?soort=" . urlencode($soort) .       "&amp;naam=" . urlencode($product[0]) .       "&amp;latijn=" . urlencode($product[1]);printf("<td><a href=\"%s\" target="Product">%s</a></td>", $url, $url);?>

Dan werkt hij goed volgens mij

Oh, ennuh ik heb van Grum nog nooit een antwoord gezien wat nergens op sloeg

/edit: Waarom sloopt topix alle newlines uit me code?

Verwijderd

Topicstarter
Op donderdag 23 mei 2002 13:14 schreef Martijn02 het volgende:
Geef de output van je <A href=....> eens?

Heb even geprobeerd, heb de code ff overgenomen en aangepast dat het werkt...
PHP:
1
<?$urltemp= "product.php?soort=$soort&amp;amp;naam=xxxxx&amp;amp;latijn=yyy yyy yyy";$url= urlencode($urltemp)." target=Product";printf("<td><a href=%s>%s</a></td>", $url, $url); //<= 2e $url heb ik even toegevoegd anders klopt de syntax niet?>

Dat print dit als resultaat
code:
1
<td><a href=product.php%3Fsoort%3D%26naam%3Dxxxxx%26latijn%3Dyyy+yyy+yyy target=Product</a></td>

En ik denk dat het hij nu gaat proberen om de file:

product.php%3Fsoort%3D%26naam%3Dxxxxx%26latijn%3Dyyy+yyy+yyy

op te vragen, en dat je daar geen rechten toe hebt is niet meer dan logisch, zo'n smerige naam :)

Als ik jou was, en ik begrijp je bedoeling goed zou ik het als volgt doen...
PHP:
1
<?$url = "product.php" .       "?soort=" . urlencode($soort) .       "&amp;amp;naam=" . urlencode($product[0]) .       "&amp;amp;latijn=" . urlencode($product[1]);printf("<td><a href=\"%s\" target="Product">%s</a></td>", $url, $url);?>

Dan werkt hij goed volgens mij

Oh, ennuh ik heb van Grum nog nooit een antwoord gezien wat nergens op sloeg

/edit: Waarom sloopt topix alle newlines uit me code?
Bedankt, volgens mij werkt het! :)
Grum antwoord met dat dit niks met PHP te maken heeft maar met html, terwijl het toch duidelijk is (volgens mij) dat ik string parameters wil doorgeven via de url en deze verder wil gebruiken in de nieuwe pagina.

Maja no harm done, en thnx a lot! Ik kan weer verder aan de slag :)

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 00:09
Linh81:
Grum antwoord met dat dit niks met PHP te maken heeft maar met html, terwijl het toch duidelijk is (volgens mij) dat ik string parameters wil doorgeven via de url en deze verder wil gebruiken in de nieuwe pagina.
Het antwoord van Grum is niet meer dan logisch: jij hoort gewoon dingen in de <a> tag te quoten. Dat hoort met alle html attributen in alle tags.

En dat je dan zo'n opmerking geeft, vind ik ronduit belachelijk. We proberen hier om elkaar te helpen, niet om elkaar af te snauwen.

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

kwestie van debuggen en zelf nadenken.

Grum's antwoord zou wel eens veel dichter bij de waarheid kunnen liggen dan je denkt
Pagina: 1

Dit topic is gesloten.