/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
REQUEST_URI...?
Fra : Preben Larsen


Dato : 05-01-06 22:07

Hej!

Er der nogen, der kan kaste lidt lys over problemet her - hvad
skal jeg gøre...?
Eller måske henvise til en tutorial - hvor jeg selv kan bakse
videre med forståelsen af problemet!

www.prana-terapi.dk/index.php

Med venlig hilsen
Preben Larsen

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Ulrik Nielsen (05-01-2006)
Kommentar
Fra : Ulrik Nielsen


Dato : 05-01-06 22:22

Preben Larsen wrote:
> Hej!
>
> Er der nogen, der kan kaste lidt lys over problemet her - hvad
> skal jeg gøre...?
> Eller måske henvise til en tutorial - hvor jeg selv kan bakse
> videre med forståelsen af problemet!

if (isset($REQUEST_URI)) {}


--
ulrik nielsen |
-----------------+---------------------------------------------------
quote or the day | Feature was not beta tested
from bofh | http://www.cs.wisc.edu/~ballard/bofh/

Preben Larsen (05-01-2006)
Kommentar
Fra : Preben Larsen


Dato : 05-01-06 22:53

Hej Ulrik!
> > Er der nogen, der kan kaste lidt lys over problemet her - hvad
> > skal jeg gøre...?
> > Eller måske henvise til en tutorial - hvor jeg selv kan bakse
> > videre med forståelsen af problemet!
>
> if (isset($REQUEST_URI)) {}
>
Du er en mand af få ord...hmmm!
Hvh
Preben

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Mads Lie Jensen (06-01-2006)
Kommentar
Fra : Mads Lie Jensen


Dato : 06-01-06 08:02

On 05 Jan 2006 21:53:29 GMT, Preben Larsen <prelar@stofanet.dk> wrote:

>Hej Ulrik!
>> > Er der nogen, der kan kaste lidt lys over problemet her - hvad
>> > skal jeg gøre...?
>> > Eller måske henvise til en tutorial - hvor jeg selv kan bakse
>> > videre med forståelsen af problemet!
>>
>> if (isset($REQUEST_URI)) {}
>>
>Du er en mand af få ord...hmmm!

Også du - du har jo ikke fortalt hvad dit problem er.


--
Mads Lie Jensen - mads@gartneriet.dk - ICQ #25478403
-snart med hund: http://vedskovens.dk/d/hv/2005_olivia/051030/051030_d2.htm

Gartneriet - snart i ny indpakning: http://ny.gartneriet.dk

Jesper H (06-01-2006)
Kommentar
Fra : Jesper H


Dato : 06-01-06 17:57

Ligesom du - Vi kan ikke se din kode, vi kan kun se at der er en fejl
på linie 48 - hvad er det, du forventer vi skal kunne se? Vi er jo
ikke clairvoyante (så vidt jeg ved), tsk tsk...

Ulrik foreslår at du ser efter om REQUEST_URI er sat. Det er for så
vidt fair nok, men der står i fejlmeddelelsen, at det mangler i
arrayet. Så enten har du stavet $_SERVER['REQUEST_URI'] forkert, eller
også er den ikke sat, hvilket du kan checke ved at gøre følgende:
<?PHP
if (isset($_SERVER['REQUEST_URI'])
{
// Først her udfører du den kode, som kræver
$_SERVER['REQUEST_URI']
}
?>

--
Mvh Jesper, http://fdf.dk/landsdel1/


Preben Larsen (06-01-2006)
Kommentar
Fra : Preben Larsen


Dato : 06-01-06 19:08

Hej!

> Ulrik foreslår at du ser efter om REQUEST_URI er sat. Det er for så
> vidt fair nok, men der står i fejlmeddelelsen, at det mangler i
> arrayet. Så enten har du stavet $_SERVER['REQUEST_URI'] forkert, eller
> også er den ikke sat, hvilket du kan checke ved at gøre følgende:
> <?PHP
> if (isset($_SERVER['REQUEST_URI'])
> {
> // Først her udfører du den kode, som kræver
> $_SERVER['REQUEST_URI']
> }
> ?>

Den første fejl har jeg selv fundet frem til og rettet!

Der stod:
$pre = explode("/", $_SERVER['REQUEST_URI']);

Det blev rettet til:
$pre = explode("/", $_SERVER['PHP_SELF']);

Det sidste problem i linje 101:

if(is_array($sdirs)) {

Giver følgende melding:

Notice: Undefined variable: sdirs in
D:\websider\global\prana-terapi.dk\prana-terapi.dk\www\sitemap.php on
line 101

HVAD SKAL JEG GØRE HER? (- håber spørgsmålet er tilstrækkeligt tydeligt
formuleret!)

Mvh
Preben Larsen





--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

René Lønstrup (06-01-2006)
Kommentar
Fra : René Lønstrup


Dato : 06-01-06 23:42

Preben Larsen wrote:
> if(is_array($sdirs)) {
>
> Giver følgende melding:
>
> Notice: Undefined variable: sdirs in
> D:\websider\global\prana-terapi.dk\prana-terapi.dk\www\sitemap.php on
> line 101

Variablen $sdirs findes ikke, så php kan ikke tjekke om den er et array.

> HVAD SKAL JEG GØRE HER? (- håber spørgsmålet er tilstrækkeligt
> tydeligt formuleret!)

Variablen skal være oprettet inden den skal tjekkes, altså inden linie 101.
Hvis den skulle være oprettet på dette tidspunkt, skal du til at kigge din
kode igennem for fejl.. Hvis den derimod kun bliver oprettet under visse
tilfælde, f.eks. i en if else statement, kan du tjekke om den findes ved at
bruge isset():
if (isset($sdirs) && is_array($sdirs)) {
}


--
Mvh René Lønstrup
web: http://rene.loenstrup.net?r=usenet
email: se om du kan regne den ud..



Preben Larsen (07-01-2006)
Kommentar
Fra : Preben Larsen


Dato : 07-01-06 07:19

Hej René Lønstrup
> > if(is_array($sdirs)) {
> >
> > Giver følgende melding:
> >
> > Notice: Undefined variable: sdirs in
> > D:\websider\global\prana-terapi.dk\prana-terapi.dk\www\sitemap.php on
> > line 101
>
> Variablen $sdirs findes ikke, så php kan ikke tjekke om den er et array.
>
> > HVAD SKAL JEG GØRE HER?
> >
> Variablen skal være oprettet inden den skal tjekkes, altså inden linie 101.
> Hvis den skulle være oprettet på dette tidspunkt, skal du til at kigge din
> kode igennem for fejl.. Hvis den derimod kun bliver oprettet under visse
> tilfælde, f.eks. i en if else statement, kan du tjekke om den findes ved at
> bruge isset():
> if (isset($sdirs) && is_array($sdirs)) {
> }

Så virket det!
Mange tak for hjælpen!
Mvh
Preben Larsen


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Preben Larsen (06-01-2006)
Kommentar
Fra : Preben Larsen


Dato : 06-01-06 19:39

Hej!

> Ulrik foreslår at du ser efter om REQUEST_URI er sat. Det er for så
> vidt fair nok, men der står i fejlmeddelelsen, at det mangler i
> arrayet. Så enten har du stavet $_SERVER['REQUEST_URI'] forkert, eller
> også er den ikke sat, hvilket du kan checke ved at gøre følgende:
> <?PHP
> if (isset($_SERVER['REQUEST_URI'])
> {
> // Først her udfører du den kode, som kræver
> $_SERVER['REQUEST_URI']
> }
> ?>

Den første fejl har jeg selv fundet frem til og rettet!

Der stod:
$pre = explode("/", $_SERVER['REQUEST_URI']);

Det blev rettet til:
$pre = explode("/", $_SERVER['PHP_SELF']);

Det sidste problem i linje 101:

if(is_array($sdirs)) {

Giver følgende melding:

Notice: Undefined variable: sdirs in
D:\websider\global\prana-terapi.dk\prana-terapi.dk\www\sitemap.php on
line 101

HVAD SKAL JEG GØRE HER?


Mvh
Preben Larsen

PS Jeg vil gerne sende hele scriptet til dig, hvis det er nødvendigt!





--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jesper H (06-01-2006)
Kommentar
Fra : Jesper H


Dato : 06-01-06 13:12

Du lyder en kende fornærmet over, at der er én herinde, der har
forsøgt at hjælpe dig - det behøver du vist ikke, så får du ikke
mere hjælp, bare et råd.

Du skriver ikke hvad problemet er - du henviser kun til en adresse,
hvor der er en fejl-meddelelse. Det eneste, Ulrik kan se ud fra den er,
at du mangler at se efter om REQUEST_URI er sat, derfor foreslår han
if (isset($REQUEST_URI)) {} Indenfor klammerne kan du så skrive den
kode, der skal eksekveres hvis REQUEST_URI er sat.

Efter at have brugt google lidt, kan jeg se, at REQUEST_URI ikke
skrives som $REQUEST_URI men som et index i et array (hvilket
fejlbeskeden også klager over). Hvis du skal bruge strengen
REQUEST_URI, skal du hente den fra $_SERVER variablen, dvs.
<?PHP
$min_streng = $_SERVER['REQUEST_URI'];
?>
Måske du ikke har skrevet $_SERVER foran eller det er stavet forkert,
eller $_SERVER['REQUEST_URI'] bare ikke er sat.

Du kan ovenikøbet også vælge at bruge Ulriks råd, HVIS nu ikke
$_SERVER['REQUEST_URI'] er sat hver gang:
<?PHP
if (isset($_SERVER['REQUEST_URI']))
{
$min_streng = $_SERVER['REQUEST_URI'];
// og herefter udfører du så den kode, som skal bruge indholdet
af REQUEST_URI
}
?>

Hvis du vil have yderligere hjælp til problemet, kan du gøre en eller
flere af følgende ting:
1. Kigge på linie 48, hvor din parser fortæller dig at problemet er.
2. Besøge adressen http://www.phpfreaks.com/phpref/53.php og se om det
hjælper med brugen af REQUEST_URI.
3. Besøge http://dk2.php.net/ og kigge lidt der, f.eks. under
http://dk.php.net/reserved.variables
3. Vise os noget af den kode, som laver fejlen - vi kan kun se at
problemet er på linie 48, men ikke hvilken kode der laver fejlen.
4. Lyde mindre fornærmet når nogle prøver at hjælpe med et problem,
som knapt nok er beskrevet.

--
Mvh Jesper, http://fdf.dk/landsdel1/


Jesper H (06-01-2006)
Kommentar
Fra : Jesper H


Dato : 06-01-06 23:59

> Det sidste problem i linje 101:
> if(is_array($sdirs)) {
> Giver følgende melding:
> Notice: Undefined variable: sdirs in
> D:\websider\global\prana-terapi.dk\prana-terapi.dk\www\sitemap.php on
> line 101

Jeg får samme meddelelse, hvis jeg laver koden på min egen webserver:
<?PHP
if(is_array($sdirs)) {
// Et eller andet sker så herefter
}
?>
Så vidt jeg lige kan se, så skyldes det vist, at is_array() ikke
checker hvorvidt variablen $sdirs _eksisterer_, men kun om den er et
_array_. Men det giver i sig selv ikke en fejl (warning) - tror mere
det er en "service-meddelelse" (notice) som parseren giver dig som
hjælp.

Så altså, når parseren når til dette punkt i koden, eksisterer
$sdirs ikke, dvs. den er ikke blevet tilskrevet (eller erklæret, men
det er PHP jo ikke så strikst med). Det kan enten skyldes, at du ikke
tilskriver den noget sted tidligere i koden, ELLER nok nærmere at den
bliver tilskrevet i en if-sætning, som ikke er sand. Prøv f.eks. at
se her:

<?PHP
$testvar = 1;

if ($testvar == 0)
{
// Denne betingelse vil aldrig være sand,
// og dermed vil denne kode aldrig blive kørt:
$sdirs = array('et', 'to', 'tre');
}

if (is_array($sdirs))
{
// Her vil PHP-parseren give den notice, du får
// da $sdirs endnu ikke er tilskrevet (da den
// forrige sætning jo var falsk).
}

if ($testvar == 1)
{
// Denne betingelse vil altid være sand,
// og dermed vil denne kode altid blive kørt:
$sdirs = array('et', 'to', 'tre');
}

if (is_array($sdirs))
{
// Her vil PHP-parseren ikke give den notice, du får
// da $sdirs nu er tilskrevet (da den
// forrige sætning jo var sand).
}

?>


Så det, du kan gøre er at omformulere din if-sætning til følgende:
<?PHP
if (isset($sdirs) && is_array($sdirs))
{
// Her udføres så den kode, hvori det forudsættes at $sdirs
// eksisterer (er sat = isset) OG er et array
}
?>

Håber det hjælper. Ellers vil det nok hjælpe om du sendte mig
scriptet.

--
Mvh Jesper, http://fdf.dk/landsdel1/


Jesper H (07-01-2006)
Kommentar
Fra : Jesper H


Dato : 07-01-06 00:02

> Det sidste problem i linje 101:
> if(is_array($sdirs)) {
> Giver følgende melding:
> Notice: Undefined variable: sdirs in
> D:\websider\global\prana-terapi.dk\prana-terapi.dk\www\sitemap.php on
> line 101

Jeg får samme meddelelse, hvis jeg laver koden på min egen webserver:
<?PHP
if(is_array($sdirs)) {
// Et eller andet sker så herefter
}
?>
Så vidt jeg lige kan se, så skyldes det vist, at is_array() ikke
checker hvorvidt variablen $sdirs _eksisterer_, men kun om den er et
_array_. Men det giver i sig selv ikke en fejl (warning) - tror mere
det er en "service-meddelelse" (notice) som parseren giver dig som
hjælp.

Så altså, når parseren når til dette punkt i koden, eksisterer
$sdirs ikke, dvs. den er ikke blevet tilskrevet (eller erklæret, men
det er PHP jo ikke så strikst med). Det kan enten skyldes, at du ikke
tilskriver den noget sted tidligere i koden, ELLER nok nærmere at den
bliver tilskrevet i en if-sætning, som ikke er sand. Prøv f.eks. at
se her:

<?PHP
$testvar = 1;

if ($testvar == 0)
{
// Denne betingelse vil aldrig være sand,
// og dermed vil denne kode aldrig blive kørt:
$sdirs = array('et', 'to', 'tre');
}

if (is_array($sdirs))
{
// Her vil PHP-parseren give den notice, du får
// da $sdirs endnu ikke er tilskrevet (da den
// forrige sætning jo var falsk).
}

if ($testvar == 1)
{
// Denne betingelse vil altid være sand,
// og dermed vil denne kode altid blive kørt:
$sdirs = array('et', 'to', 'tre');
}

if (is_array($sdirs))
{
// Her vil PHP-parseren ikke give den notice, du får
// da $sdirs nu er tilskrevet (da den
// forrige sætning jo var sand).
}

?>


Så det, du kan gøre er at omformulere din if-sætning til følgende:
<?PHP
if (isset($sdirs) && is_array($sdirs))
{
// Her udføres så den kode, hvori det forudsættes at $sdirs
// eksisterer (er sat = isset) OG er et array
}
?>

Håber det hjælper. Ellers vil det nok hjælpe om du sendte mig
scriptet.

--
Mvh Jesper, http://fdf.dk/landsdel1/


Jesper H (07-01-2006)
Kommentar
Fra : Jesper H


Dato : 07-01-06 00:01

> Det sidste problem i linje 101:
> if(is_array($sdirs)) {
> Giver følgende melding:
> Notice: Undefined variable: sdirs in
> D:\websider\global\prana-terapi.dk\prana-terapi.dk\www\sitemap.php on
> line 101

Jeg får samme meddelelse, hvis jeg laver koden på min egen webserver:
<?PHP
if(is_array($sdirs)) {
// Et eller andet sker så herefter
}
?>
Så vidt jeg lige kan se, så skyldes det vist, at is_array() ikke
checker hvorvidt variablen $sdirs _eksisterer_, men kun om den er et
_array_. Men det giver i sig selv ikke en fejl (warning) - tror mere
det er en "service-meddelelse" (notice) som parseren giver dig som
hjælp.

Så altså, når parseren når til dette punkt i koden, eksisterer
$sdirs ikke, dvs. den er ikke blevet tilskrevet (eller erklæret, men
det er PHP jo ikke så strikst med). Det kan enten skyldes, at du ikke
tilskriver den noget sted tidligere i koden, ELLER nok nærmere at den
bliver tilskrevet i en if-sætning, som ikke er sand. Prøv f.eks. at
se her:

<?PHP
$testvar = 1;

if ($testvar == 0)
{
// Denne betingelse vil aldrig være sand,
// og dermed vil denne kode aldrig blive kørt:
$sdirs = array('et', 'to', 'tre');
}

if (is_array($sdirs))
{
// Her vil PHP-parseren give den notice, du får
// da $sdirs endnu ikke er tilskrevet (da den
// forrige sætning jo var falsk).
}

if ($testvar == 1)
{
// Denne betingelse vil altid være sand,
// og dermed vil denne kode altid blive kørt:
$sdirs = array('et', 'to', 'tre');
}

if (is_array($sdirs))
{
// Her vil PHP-parseren ikke give den notice, du får
// da $sdirs nu er tilskrevet (da den
// forrige sætning jo var sand).
}

?>


Så det, du kan gøre er at omformulere din if-sætning til følgende:
<?PHP
if (isset($sdirs) && is_array($sdirs))
{
// Her udføres så den kode, hvori det forudsættes at $sdirs
// eksisterer (er sat = isset) OG er et array
}
?>

Håber det hjælper. Ellers vil det nok hjælpe om du sendte mig
scriptet.

--
Mvh Jesper, http://fdf.dk/landsdel1/


Jesper H (07-01-2006)
Kommentar
Fra : Jesper H


Dato : 07-01-06 00:07

> Det sidste problem i linje 101:
> if(is_array($sdirs)) {
> Giver følgende melding:
> Notice: Undefined variable: sdirs in
> D:\websider\global\prana-terapi.dk\prana-terapi.dk\www\sitemap.php on
> line 101

Jeg får samme meddelelse, hvis jeg laver koden på min egen webserver:
<?PHP
if(is_array($sdirs)) {
// Et eller andet sker så herefter
}
?>
Så vidt jeg lige kan se, så skyldes det vist, at is_array() ikke
checker hvorvidt variablen $sdirs _eksisterer_, men kun om den er et
_array_. Men det giver i sig selv ikke en fejl (warning) - tror mere
det er en "service-meddelelse" (notice) som parseren giver dig som
hjælp.

Så altså, når parseren når til dette punkt i koden, eksisterer
$sdirs ikke, dvs. den er ikke blevet tilskrevet (eller erklæret, men
det er PHP jo ikke så strikst med). Det kan enten skyldes, at du ikke
tilskriver den noget sted tidligere i koden, ELLER nok nærmere at den
bliver tilskrevet i en if-sætning, som ikke er sand. Prøv f.eks. at
se her:

<?PHP
$testvar = 1;

if ($testvar == 0)
{
// Denne betingelse vil aldrig være sand,
// og dermed vil denne kode aldrig blive kørt:
$sdirs = array('et', 'to', 'tre');
}

if (is_array($sdirs))
{
// Her vil PHP-parseren give den notice, du får
// da $sdirs endnu ikke er tilskrevet (da den
// forrige sætning jo var falsk).
}

if ($testvar == 1)
{
// Denne betingelse vil altid være sand,
// og dermed vil denne kode altid blive kørt:
$sdirs = array('et', 'to', 'tre');
}

if (is_array($sdirs))
{
// Her vil PHP-parseren ikke give den notice, du får
// da $sdirs nu er tilskrevet (da den
// forrige sætning jo var sand).
}

?>


Så det, du kan gøre er at omformulere din if-sætning til følgende:
<?PHP
if (isset($sdirs) && is_array($sdirs))
{
// Her udføres så den kode, hvori det forudsættes at $sdirs
// eksisterer (er sat = isset) OG er et array
}
?>

Håber det hjælper. Ellers vil det nok hjælpe om du sendte mig
scriptet.

--
Mvh Jesper, http://fdf.dk/landsdel1/


Jesper H (07-01-2006)
Kommentar
Fra : Jesper H


Dato : 07-01-06 11:32

Hmm, det her svar skrev jeg for længe siden, men det dukkede ikke om
selv efter ca. 12 timer... Sikke en round-trip-time...

--
Mvh Jesper, http://fdf.dk/landsdel1/


Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste