Toon posts:

Simpel PHP Probleem

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

Verwijderd

Topicstarter
Geachte PHP-experts,


Ik ben bang dat er voor mijn 2 problemen weinig expertise nodig is; ik ben slechts een beginnende 'devver'.
Onlangs ben ik begonnen met het schrijven van simpele scripts in PHP, en ik kom niet uit 2 kleine probleempjes.

Probleem 1:
Indien er geen URL wordt opgegeven, moet er in een andere frame dan waar het script uitgevoerd wordt een HTML pagina geopend worden.
Het lukt me niet om uberhaupt een pagina te laten openen via PHP.
Ik heb verschillende dingen geprobeerd, zoals file_open, fopen e.d., maar hij blijft schijnbaar nergens opgebaseerde errors geven. Googlen levert geen of irrelevante resultaten op.
Edit: De oplossing moet (uiteraard) op de plaats van xyz komen.
PHP:
1
2
3
4
5
6
if(!$url) 
    xyz;
else {
...................................
}
?>


Probleem 2:
Ik wil een soort 'hyperlink' maken, met een gewone anchor, maar een url die in het script moet worden ingevoerd als variabele $url, en meteen het script ook daadwerkelijk uitvoerd.

Bij voorbaat dank.

[ Voor 8% gewijzigd door Verwijderd op 24-09-2005 20:47 ]


  • niwreG
  • Registratie: Augustus 2003
  • Laatst online: 17-10-2024

niwreG

^heeft dat geschreven->

Wat jij wilt zou je beter kunnen doen met javascript volgens mij

^^eventueele typfouten zijn als vermaak bedoeld


Verwijderd

Hm. Vraag jezelf wellicht eerst af of het wel verstandig is om met frames te werken. Daarnaast snap ik bijzonder weinig van je post. Wat wil je precies? En wat lukt er niet?

  • EdwinG
  • Registratie: Oktober 2002
  • Laatst online: 10:22
Ik denk dat je voor het eerste probleem de php-code in het document met de frameset moet plaatsen, niet in 1 van de sub-pagina's.

PHP:
1
2
3
4
5
6
7
if(!url)
{
echo "<frame src=\"bestand.html\">";
};
else
{
};


// Overigens ben ik persoonlijk tegen (bijna) elk gebruik van frames, er zijn vast andere oplossingen te vinden.

[ Voor 28% gewijzigd door EdwinG op 24-09-2005 20:53 ]

Bezoek eens een willekeurige pagina


  • ikke007
  • Registratie: Juni 2001
  • Laatst online: 22-10-2025
probleem 1:

include("pagina.html"); (noot: dit verwacht dat het php code is, maar je kunt dus ook pagina.php includen en daarin als eerste ?> en als laatste <?PHP doen)

probleem 2:

index.php?eenurl=www.hotmail.com komt na bezoeken bij jou binnen met een $_GET variabele

$_GET['eenurl'] = 'www.hotmail.com';

Lets remove all security labels and let the problem of stupidity solve itself


Verwijderd

Topicstarter
iKKe007 schreef op zaterdag 24 september 2005 @ 20:52:
probleem 1:

include("pagina.html");
Dit lijkt perfect te werken, dank u.
iKKe007 schreef op zaterdag 24 september 2005 @ 20:52:
probleem 2:

index.php?eenurl=www.hotmail.com komt na bezoeken bij jou binnen met een $_GET variabele

$_GET['eenurl'] = 'www.hotmail.com';
Ik heb hier een beetje gespeeld, maar kom er nog niet uit.
Of dit komt doordat ik niet goed begrijp wat u bedoelt, of dat ik het u niet goed uitgelegd heb weet ik niet.

Nog een keer voor de mensen die uit mijn oorspronkelijke uitleg niet direct mijn doel zien:
Op het scherm moeten enkele 'namen' verschijnen, die misschien zullen lijken op hyperlinks, maar i.p.v. de bezoeker door te sturen naar een pagina wil ik dat elke 'naam' een eigen waarde bevat die op het moment dat er op de 'naam' geklikt wordt, wordt ingevoerd in een PHP script als variabele.

Voorbeeld:
Ik heb de naam 'Hallo' met als achterliggende waarde '5'.
Zodra er op 'Hallo' geklikt wordt, moet '5' worden ingevoerd in een PHP script en deze zal iets anders op het beeldscherm toveren.
Dat de waardes links zijn en de variabele '$url' heet doet er meen ik niet toe en is misschien verwarrend.


Wat betreft het gebruik van frames,

Ik ben slechts een hobbyist (spelling?).
In mijn vrije tijd maak ik simpele webpagina's en vergroot daarmee langzamerhand mijn kennis.
Zoals u waarschijnlijk inmiddels duidelijk is, is mijn kennis over 'Programming & Webscripting' (nog) klein.
Ik weet dat professionele pagina's het heel anders doen, met ASP(X) of PHP meen ik, maar momenteel bezit ik simpelweg de kennis niet om zoiets te maken.

[ Voor 6% gewijzigd door Verwijderd op 24-09-2005 21:53 ]


  • Johnny
  • Registratie: December 2001
  • Laatst online: 24-04 11:10

Johnny

ondergewaardeerde internetguru

Verwijderd schreef op zaterdag 24 september 2005 @ 21:52:

Ik heb hier een beetje gespeeld, maar kom er nog niet uit.
Of dit komt doordat ik niet goed begrijp wat u bedoelt, of dat ik het u niet goed uitgelegd heb weet ik niet.

Nog een keer voor de mensen die uit mijn oorspronkelijke uitleg niet direct mijn doel zien:
Op het scherm moeten enkele 'namen' verschijnen, die misschien zullen lijken op hyperlinks, maar i.p.v. de bezoeker door te sturen naar een pagina wil ik dat elke 'naam' een eigen waarde bevat die op het moment dat er op de 'naam' geklikt wordt, wordt ingevoerd in een PHP script als variabele.

Voorbeeld:
Ik heb de naam 'Hallo' met als achterliggende waarde '5'.
Zodra er op 'Hallo' geklikt wordt, moet '5' worden ingevoerd in een PHP script en deze zal iets anders op het beeldscherm toveren.
Dat de waardes links zijn en de variabele '$url' heet doet er meen ik niet toe en is misschien verwarrend.
Zoiets als wil je dan als HTML code, een lijst met aanklikbare namen die ieder een andere waarde doorgeven:

HTML:
1
2
3
4
5
<ul>
<li><a href="?id=1">Johnny</a></li>
<li><a href="?id=2">Sjakie</a></li>
<li><a href="?id=3">Henkie</a></li>
</ul>

Omdat er voor het vraagteken geen adres staat komt de waarde terecht op dezelfde pagina.

In dit geval heet de waarde "id", in PHP kan je hem dus uitlezen met $_GET['id']

Als je nu echo $_GET['id']; zou doen, dan zou je het getal zien.

Jij wilt dus dat er afhankelijk van het getal verschillende dingen worden gedaan:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
if($_GET['id']) == 1) {

include('johnny.php');

} elseif($_GET['id'] == 2) {

include('sjakie.php');

} elseif($_GET['id'] == 3) {

include('henkie.php');

}


Nu wordt er afhankelijk van het getal in het adres een andere pagina weergeven.

[ Voor 23% gewijzigd door Johnny op 24-09-2005 22:09 ]

Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.


  • aex351
  • Registratie: Juni 2005
  • Laatst online: 12:35

aex351

I am the one

gebruik dan liever de switch functie john (www.php.net/switch)

< dit stukje webruimte is te huur >


  • ikke007
  • Registratie: Juni 2001
  • Laatst online: 22-10-2025
bestand index.php

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
//een array van 3 vakjes (0/1/2) met hierin 3 namen welke we mogelijk kunnen zijn
$namen[0] = 'jan';
$namen[1] = 'piet';
$namen[3] = 'henk';

$naam 'onbekende bezoeker'; //standaard in ieder geval een waarde in deze variabele vullen ivm fouten later

if(isset($_GET['naam'])){
 $naamid = (int) $_GET['naam']; //dit ivm verkeerde invoer (iemand doet zelf ?naam=9999 ofzo)
 if(isset($namen[$naamid])){
   $naam = $namen[$naamid];
 }
}
?>
<html>
<head></head>
<body>
 Hallo <?=$naam;?>! leuk dat je er bent. Voel je jezelf nog niet op je gemak?
<ol>
<?php
  //foreach is een statement om snel door een array van vakjes heen te wandelen, per keer vult het de $naamId en $eenNaam met het nummer van het vakje en de bijbehorende naam/waarde welke in dit vakje zit
  foreach($namen as $naamId => $eenNaam){
   print('<li><a href="'.$_SERVER['PHP_SELF'].'?naam='.$naamId.'">'.$eenNaam.'</a></li>');
  }
?>
</ol>
</body>
</html>

[ Voor 43% gewijzigd door ikke007 op 24-09-2005 22:12 ]

Lets remove all security labels and let the problem of stupidity solve itself


  • Johnny
  • Registratie: December 2001
  • Laatst online: 24-04 11:10

Johnny

ondergewaardeerde internetguru

Laten we nu eerst maar zorgen dat Raph23 de if/else snapt...

Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.


Verwijderd

Topicstarter
Johnny schreef op zaterdag 24 september 2005 @ 22:07:
[...]


Laten we nu eerst maar zorgen dat Raph23 de if/else snapt...
Dat doe ik heus wel (zie startpost). Zelfde geldt voor 'Switch'.

In ieder geval, alvast erg bedankt voor jullie suggesties.
Ik zal er morgenochtend wanneer ik frisser ben (alcohol & vermoeidheid) uitgebreid naar kijken.

  • whoami
  • Registratie: December 2000
  • Laatst online: 14:12
Tja, sorry maar dit is niet de bedoeling van P&W.

Het kan de bedoeling niet zijn dat wij alles voor jou gaan voorkauwen en uitzoeken. Ik denk dat het beter is dat je eens een goed boek over PHP zoekt.

https://fgheysels.github.io/

Pagina: 1

Dit topic is gesloten.