Probleem Html/Php

Pagina: 1
Acties:

  • XippIX
  • Registratie: Augustus 2001
  • Niet online
Ik zit met een klein probleempje, ik heb een pagina....

Daarop heb ik een dropdown menu hier uit kunnen mensen de juist keuze maken, als je dat hebt gedaan druk je op verstuur. Dan moet je dus op een volgende pagina komen, dit gebeurt ook.

Je komt dan dus op een pagina met de layout. Op die pagina met layout heb ik deze code staan:

code:
1
2
3
<iframe src="doel.php" width="490" 
height="650" scrolling="no" frameborder="0"> 
</iframe>


Nu is het de bedoeling dat als je op de eerste pagina op verstuur klikt, de andere pagina wordt geopend met een iframe erin, en dat de resultaten van "verstuur"worden weergegeven in het iframe.

Dit moet dus allemaal in html gebeuren.
de situatie is dus:

1ste pagina = hoofdpagina met "verstuur"functie
2de pagina = pagina, zelfde als hoofdpagina maar dan met een een iframe erin
Resultaten van 1ste pagina moeten dus weergegeven worden op pagina 2 in het iframe.


Hoe krijg ik dit zo voor mekaar :?

Verwijderd

Je wilt het allemaal met HTML doen zeg je, maar dat is voor zover ik weet niet mogelijk. Ook zou je dan niet in /14, maar in /13 moeten posten. Wat een oplossing is in PHP is het volgende:

PHP:
1
2
3
4
5
2e pagina

<iframe src="<?=$_POST["dropdown"]?>.php" width="490" 
height="650" scrolling="no" frameborder="0"> 
</iframe>


Oid...

  • XippIX
  • Registratie: Augustus 2001
  • Niet online
maar het probleem is dat ik geen php in die pagina kan pasten. Ik kan ook wel gewoon gebruik maken van een include, maar dat werkt ook niet. Het ligt puut aan mijn template, en layout. Ik kan dit niet veranderen dus het moet wel op deze manier. Het op de 1 of andere manier wel kunnen. Wel kan ik php toepassen in het iframe natuurlijk.

Verwijderd

Je kunt de POST variabelen vast ook wel opvragen mbv javascript, maar daarvoor kan ik je niet helpen. Wellicht dat iemand anders dat wel kan, maar dat is meer een /13 vraag.

  • XippIX
  • Registratie: Augustus 2001
  • Niet online
mm van javascript weet ik niets van. helaas, misschien toch een move?

  • XippIX
  • Registratie: Augustus 2001
  • Niet online
kick

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 30-08 22:17

mulder

ik spuug op het trottoir

javascript
<-- naar de buren (als die links zitten)

oogjes open, snaveltjes dicht


  • XippIX
  • Registratie: Augustus 2001
  • Niet online
oke, moet ik dan zelf maar eff een move aanvragen ?

en is er geen andere oplossing ?

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 30-08 22:17

mulder

ik spuug op het trottoir

anders dan wat.

oogjes open, snaveltjes dicht


  • Ericston
  • Registratie: Maart 2001
  • Laatst online: 05-08 18:36
Dit helpt je misschien op weg.
layout.html (2e pagina):
HTML:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<html>
<head>
<script language="javascript">
    // This routine returns an object similar to SSJS's
    // request object. Used to process forms on the client, in a method
    // similar to SSJS.
    //
    // Usage: request=createRequestObject();
    //       document.writeln("The Name was " + request.name);
    //
    function createRequestObject() {
       var request  = new Object();      // Creates a new request object.
       var nameVal  = "";               // Holds array for a single name-value pair.
       var inString = location.search;   // Strips query string from URL.
       var separator = ",";                // Character used to separate multiple values.
    
      // If URL contains a query string, grabs it.
       if (inString.charAt(0) == "?") {
           // Removes "?" character from query string.
           inString = inString.substring(1, inString.length);
           // Separates query string into name-value pairs.
           keypairs = inString.split("&");
           // Loops through name-value pairs.
           for (var i=0; i < keypairs.length; i++)
           {
               // Splits name-value into array (nameVal[0]=name, nameVal[1]=value).
               nameVal = keypairs[i].split("=");
               // Replaces "+" characters with spaces and then unescapes name-value pair.
               for (a in nameVal) {
                nameVal[a] = nameVal[a].replace(/+/g, " ")
                nameVal[a] = unescape(nameVal[a]);
               }
               // Checks to see if name already exists in request object
               // (since select lists may contain multiple values).
               if (request[nameVal[0]]) {
                    request[nameVal[0]] += separator + nameVal[1];
               } else {
                    request[nameVal[0]] = nameVal[1];
               }
           }
       }
       return request;
    }

    function iframeSrc() {
        request = createRequestObject();
        document.getElementById("freem").src = "content.php?str=" + request.bla;
        alert(document.getElementById("freem").src);
    }
</script>
</head>
<body onload="iframeSrc()">
<iframe id="freem"></iframe>
</body>
</html>
createRequestObject() heb ik gejat van http://developer.netscape.com/viewsource/fields_form.html en werkt alleen met GET variabelen.
Overigens werkt dit niet, hoewel de src attribute van de iframe goed staat wordt hij niet gerefreshed, dit zul je zelf moeten zien op te lossen.
Ik betwijfel of dat op een elegante manier zal lukken.


Je kan ook met cookies werken.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
+---------+
|form.html|       //stuurt met post vars de waarde van de select door
+---------+
      |
      V
+-------------+
|setcookie.php|   //set cookie met waarde van select, verstuurt
+-------------+   //location: header naar layout.html
      |
      V
+-----------+
|layout.html|     //heeft een iframe erin genaamd content.php
+-----------+
      |
      V
+-----------+
|content.php|     //haalt de waarde van de select uit $_COOKIE[]
+-----------+

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 10:19

D2k

P&W -> W&G
en voortaan niet zo snel kicken svp

Doet iets met Cloud (MS/IBM)


  • XippIX
  • Registratie: Augustus 2001
  • Niet online
euh niet zo snel kicken :? kijk eens naar de datum

en, Ericston ik ga het even proberen, bedankt voor je heldere uitleg, ik ga even kijken hoe ver ik kom. Want ik heb nog nooit met javascript gewerkt, maar ik zal het proberen.

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

XippIX schreef op 20 oktober 2002 @ 13:43:
euh niet zo snel kicken :? kijk eens naar de datum
let op wat je doet:
XippIX schreef op 19 oktober 2002 @ 22:23:
mm van javascript weet ik niets van. helaas, misschien toch een move?
en in de FAQ staat:
Uit de FAQ:
Wat we ook duidelijk niet op prijs stellen:
# Je probleem binnen 24 uur met een 'schopreactie' onder de aandacht brengen.
succes met je JavaScript! :)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • XippIX
  • Registratie: Augustus 2001
  • Niet online
Bedankt voor jouw hele mooie uitleg Spider.007!!

Nou het is dus niet gelukt op deze manier.

Als ik het php probeer lukt het niet,
Ik doe dit met een include in de layout.

<?php include("doel.php"); ?>
Echter krijg ik dan deze error:

Parse error: parse error in /home/zippie/HTML/includes/template.php(130) : eval()'d code on line 152

Regels 152 is:

code:
1
$line = preg_replace('/[\?|%]>/', '', $line);


hij replced dus alles, waar die tekens in voor komen, als ik dit eruit haal, dan werkt het helemaal niet, meer en krijg ik een blanco pagina.

Ik heb toen dit gemaakt:

code:
1
2
3
4
5
6
ob_start(); 
@ob_implicit_flush(0); 
require("doel.php"); 
$contents = ob_get_contents(); 
ob_end_clean(); 
$site_template->register_vars("doel", $contents);


Maar dit werkt niet, ik krijg precies hetzelfde probleem.

weet iemand hoe ik dit wel werkend krijg?

  • XippIX
  • Registratie: Augustus 2001
  • Niet online
kickerdekicke en toch maar een move denk ik

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 11:48

RM-rf

1 2 3 4 5 7 6 8 9

code:
1
preg_replace('/[\?|\%]>/', '', $line)

zou je misschien kunnen helpen

verder snap ik werkelijk niet waar je probleem ligt of wat je allemaal uitgedacht hebt, misschien komt het daardoor ook dat je geen antwoord krijgt; wat wil je nu eigenlijk bereiken;

een php pagina in een frameset hangen en daarin de waardes via een GET aanrepen is mogelijk niet wenselijk (en misschien onveilig), verder kun je ook altijd een frameset-pagina door php laten genereren. je javascript heb je al.

misschien helemaal vreemd, maar als ik lees dat je form-pagina zich al in een iframe bevind, waarom submit je niet gewoon met target="_self" (is overigens ook al default voor submits dacht ik toch)?

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen

Pagina: 1