PHP op localhost niet altijd weergegeven

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Jacob

Jacob

23/03/2006 01:00:00
Quote Anchor link
Ik zit met het volgende probleem.
Apache en PHP 5 zijn geinstalleerd via wamp. op mijn eigen browser wordt phpinfo.php weergegeven. PHP werkt.
Maar andere php pagina's worden niet altijd weergegeven. Dit geldt wanneer er met een string naar een url wordt verwezen.
Online bij een externe server draaien deze pagina's perfect, maar niet op mijn eigen pc, wat erg lastig is bij het webdesignen. Het gaat om code zoals:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
echo
("<FRAMESET FRAMEBORDER=NO FRAMEBORDER=0 BORDER=0 ROWS=\"118,*\">
<FRAME SCROLLING=\"NO\" SRC=\"head.php?title=$id\" NAME=\"head\" NORESIZE>
<FRAME SCROLLING=\"AUTO\" SRC=\"$id.php\" NAME=\"main\" NORESIZE>
</FRAMESET>"
);
?>

</body>
Wie kan me helpen?
 
PHP hulp

PHP hulp

16/11/2024 19:56:07
 
Willem Jan Z

Willem Jan Z

23/03/2006 07:58:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
echo '
<frameset frameborder="no" border="0" rows="118,*">
<frame scrolling="no" src="head.php?title='
.$id.'" name="head" noresize>
<frame scrolling="auto" src="'
.$id.'.php" name="main" noresize>
</frameset>'
;
?>


Single quotes, variabelen buiten de quotes html in kleine letters.

Is sowieso al een stuk overzichtelijker :)
Of het nu werkt zou je gewoon even moeten testen...
 
Wout van der Burg

Wout van der Burg

23/03/2006 09:21:00
Quote Anchor link
je hoeft je echo toch ook niet tussen haakjes te zetten?
 
Willem Jan Z

Willem Jan Z

23/03/2006 09:38:00
Quote Anchor link
Maar het kan wel :S
 
Wout van der Burg

Wout van der Burg

23/03/2006 09:46:00
Quote Anchor link
ah ok.. :) (let maar niet op mij... :) )
 
Jacob

Jacob

23/03/2006 10:09:00
Quote Anchor link
Het script dat ik geplaatst heb was slechts een voorbeeld.
Blijft de vraag waarom het gepubliceerd wel fantastisch werkt, zelfs op twee verschillende hosting sites, maar op mijn eigen pc lokaal niet. Terwijl ik de nieuwste wamp heb geinstalleerd.
Wat zie ik over het hoofd bij de installatie van het één en ander?
 
Kalle P

Kalle P

23/03/2006 10:13:00
Quote Anchor link
echo is een functie, dus echo(), maar het is niet verplicht.

En waarom moet je een frameset in php doen? Doe dingen die in html gaan gewoon in html.
 
- SanThe -

- SanThe -

23/03/2006 11:00:00
Quote Anchor link
Kijk welke versies php/mysql op de hosts draaien en vergelijk dat met die je zelf draait.
 
Jacob

Jacob

23/03/2006 12:24:00
Quote Anchor link
Ik gebruik de laatste versie van php, php 5. Dan zou je toch verwachten dat het zou moeten werken. Ook de Apache is de allerlaatste versie: 2.0 nog wat.

Ik hoop dat er een simmerik opduikt die wat verstand van servers heeft en PHP

P.S. Het script is goed, daar valt niets aan af te dingen. Natuurlijk kun je het anders schrijven, maar dat betekent niet dat het niet goed is. Laten we de alternatieven buiten beschouwing laten.
 
- SanThe -

- SanThe -

23/03/2006 12:31:00
Quote Anchor link
En wat staat er dan b.v. in zo'n string die niet werkt?
 
Jacob

Jacob

23/03/2006 12:54:00
Quote Anchor link
Bijvoorbeeld:

Not Found
The requested URL /YYY/nl/.php was not found on this server.
--------------------------------------------------------------------------------
Apache/2.0.55 (Win32) PHP/5.1.2 Server at localhost Port 80

op de plek van de /.php zou dan een variabele gegenereerd moeten worden als bijvoorbeeld 'welkom'. zodat je welkom.php krijgt.
(Waarom niet op de eigen server en wel op mijn hosting site bij een externe server?)
 
- SanThe -

- SanThe -

23/03/2006 12:58:00
Quote Anchor link
$id is dus leeg. Waar komt $id vandaan? Uit een formulier? Gebruik dan $_POST['id'] of $_GET['id'].
 
Jacob

Jacob

23/03/2006 13:05:00
Quote Anchor link
nee, de $id komt niet uit een formulier, maar uit de URL. In de url kun je nl beperkte data meezenden.
zoals bijvoorbeeld: SRC=\"head.php?title=$id\"
Maar dat funcioneert online goed, maar niet op mijn ofline op mijn pc.
Er is iets mis met mijn pc. Die moet blijkbaar anders ingesteld worden in combinatie met de apache-server en het php-programma. Maar wat!?
 
- SanThe -

- SanThe -

23/03/2006 13:08:00
Quote Anchor link
Uit de url moet je $_GET['id'] gebruiken.
De instelling van je globals staat anders (veiliger) ingesteld.
 
Jacob

Jacob

23/03/2006 13:14:00
Quote Anchor link
Goed, ik ga het script niet veranderen.
Het werkt in principe goed. Niet elk php probleem is een script probleem.

Maar bedankt voor je moeite SanThe.

Ik wacht wel tot iemand een oplossing heeft die niet het script wil aanpassen.
 
SteZZz

SteZZz

23/03/2006 13:15:00
Quote Anchor link
als je nu bijv een goede php editor gebruikt, bijv. php designer(wat gratis is) zo zijn er nog veel meer, dan zal je merken dat je code's fout zijn.
dit heeft te maken omdat je dubble qoutes gebruikt.
ik zal je laten zien hoe je deze codes het beste kunt gebruiken:

jou huidige code's:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
echo
("<FRAMESET FRAMEBORDER=NO FRAMEBORDER=0 BORDER=0 ROWS=\"118,*\">
<FRAME SCROLLING=\"NO\" SRC=\"head.php?title=$id\" NAME=\"head\" NORESIZE>
<FRAME SCROLLING=\"AUTO\" SRC=\"$id.php\" NAME=\"main\" NORESIZE>
</FRAMESET>"
);
?>


het beste is om html html te laten en php php. dus in dat geval sluit je php als je html wilt neerzetten en visa versa dus als volgt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
code code code
?>

<FRAMESET FRAMEBORDER=NO FRAMEBORDER=0 BORDER=0 ROWS="118,*">
<FRAME SCROLLING="NO" SRC="head.php?title=
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?=$id?>
" NAME="head" NORESIZE>
<FRAME SCROLLING="AUTO" SRC="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?=$id?>
.php" NAME=\"main\" NORESIZE>
</FRAMESET>

zoals je kunt zien kan php ook in de html gewoon geopent en gesloten worden, nu weet ik niet zeker of je
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?= moet gebruiken bij het openen op gewoon <? dit zou je even moeten testen, verder is het sluiten dus hetzelfde.

je zou ook met echo kunnen werken maar dan raad ik je aan single qoutes te gebruiken.
 
SteZZz

SteZZz

23/03/2006 13:19:00
Quote Anchor link
Jacob:
nee, de $id komt niet uit een formulier, maar uit de URL. In de url kun je nl beperkte data meezenden.
zoals bijvoorbeeld: SRC="head.php?title=$id"
Maar dat funcioneert online goed, maar niet op mijn ofline op mijn pc.
Er is iets mis met mijn pc. Die moet blijkbaar anders ingesteld worden in combinatie met de apache-server en het php-programma. Maar wat!?


verder wat je hier zegt klopt niet, je pc werkt prima
alleen variablen werken alleen als ze ook toegangelijk zijn, online zijn ze blijkbaar toegankelijk omdat daar de variable wel bekent is, en op je local host niet. zoals al wordt gezegt pak die variable uit de lucht als je een form gebruikt, dus met $_GET['id'] , voorbeeldje:
$id = $_GET['id'];
nu kan je $id gewoon gebruiken.

als een variable niet werkt heeft dit echt niks met je pc te maken, dus laat deze gedachte weg, de fout zit hem echt in je code's ik gebruik zelf xampp op men locale systeem om men website's locaal te testen en heb hier geen problemen mee ondervonden.
 
- SanThe -

- SanThe -

23/03/2006 13:25:00
Quote Anchor link
Quote:
Jacob schreef op 23.03.2006 13:14

Ik wacht wel tot iemand een oplossing heeft die niet het script wil aanpassen.


In php.ini register_globals op on zetten.
 
Jacob

Jacob

23/03/2006 13:41:00
Quote Anchor link
We have a winner!!! SanThe. top bedankt

nog één vraagje met betrekking tot je oplossing:
ik kwam dit tegen in mijn PHP.ini

; You should do your best to write your scripts so that they do not require
; register_globals to be on;

Wat wordt daar précies mee bedoeld?
 

23/03/2006 13:45:00
Quote Anchor link
En ik denk dat SanThe nu een diepe zucht slaakt.
 
SteZZz

SteZZz

23/03/2006 13:55:00
Quote Anchor link
Jacob:
We have a winner!!! SanThe. top bedankt

nog één vraagje met betrekking tot je oplossing:
ik kwam dit tegen in mijn PHP.ini

; You should do your best to write your scripts so that they do not require
; register_globals to be on;

Wat wordt daar précies mee bedoeld?


de directe vertaling van bablefish:
; U zou uw beste moeten doen uw manuscripten schrijven zodat zij niet vereisen; register_globals om te zijn;

eigen vertaling :P
je moet je script zo schrijven dat het niet nodig is die optie register_globals op on te zetten
oftewel pas je script aan, wat jezelf aan aangaf dat je dit niet wilde doen.
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.