Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    43

    Caricare iframe dinamicamente

    Salve,

    Ho un problema da un paio di giorni e non riesco più ad uscirne fuori.

    Praticamente ho una pagina html principale con due iframe. Un primo iframe (in alto) contenente un form e un'altro (in basso) che riceve i dati. Il primo invia i dati al secondo che li legge e li stampa in modo dinamico aggiungendo il testo che si è scritto tramite il form 'text' presente nel primo iframe.
    Fino a qui nessun problema, ma a me servirebbero 3 pulsanti (che adesso ho realizzato tramite 3 div di 3 colori diversi) che tramite linguaggio php mi cambierebbero il primo iframe (quello in alto contenente i form che ho chiamato form1.php) con altri iframe (che io ho chiamato form2.php e form3.php) aventi altri form ma che spediscano sempre i dati al secondo iframe (quello in basso che ho chiamato 2demo.php), tutto questo senza uscire mai dalla pagina html principale, quindi cliccando su uno dei 3 pulsanti presenti si andra a ricaricare soltanto l'iframe in alto lasciando inalterato tutto il resto. Come potrei realizzare una cosa del genere?

    Grazie a chiunque voglia aiutarmi.

    Vi posto un esempio di codice dato che so che potrei mettere tutti i form in un unico iframe ed evitare cosi i pulsanti e tutto il resto ma questo è solo un esempio per poter capire come funziona ed evitare cosi di postare il codice originale che sarebbe decisamente piu lungo e complicato.

    Grazie di nuovo a tutti!!

    Codice html principale:

    codice:
    
    <!DOCTYPE html>
    
    <html lang="en-US">
    
    <head>
    
    <title>Prova</title>
    
    
    </head>
    
    
    
    <body>
    
    
    <div class="body" style="height:500px; width:400px;">
    
    <div class="form">
    
    <iframe src="form1.php"></iframe>
    </div>
    
    </div>
    
    
    <iframe src="2demo.php" frameborder="0" name="view" style="height:500px; width:400px;">
    </iframe>
    
    
    
    <div class="1" style="height:50px; width:450px; margin-top:20px; margin-left:25px;">
    
    <div class="button1" style="height:50px; width:150px; background-color:#00FF66; float:left; margin-top:20px;">
    </div>
    
    <div class="button2" style="height:50px; width:150px; background-color:#CC0033; float:left; margin-top:20px;">
    </div>
    
    <div class="button3" style="height:50px; width:150px; background-color:#3333FF; float:left; margin-top:20px;">
    </div>
    
    </div>
    
    </body>
    
    </html>
    codice iframe basso 2demo.php

    codice:
    <?php 
    $modifica_parte_1 = (isset($_POST['modifica_parte_1'])) ? $_POST['modifica_parte_1'] : '';
    $modifica_parte_2 = (isset($_POST['modifica_parte_2'])) ? $_POST['modifica_parte_2'] : '';
    $modifica_parte_3 = (isset($_POST['modifica_parte_3'])) ? $_POST['modifica_parte_3'] : '';
    ?> 
    
    <!DOCTYPE html>
    <html>
    
    	<head>
            
    		<title>prova-php</title>
            
    		<link href="style.css" rel="stylesheet">
    
    		<script type="text/javascript" src="base.js"></script>
           
    	</head>
    	<body>
        
        <h1> QUESTA è LA PAGINA 1</h1>
            <h1>Qui ce il <?php // controllo se è stato inviato il testo tramite il form 
    if ($_POST['modifica_parte_1'] != '') { 
    echo $_POST['modifica_parte_1']; // mostro il testo inviato 
    } 
    else { // altrimenti se non è stato inviato o se è vuoto 
    echo ' codice da sostituire'; // mostro il testo di default 
    }  ?> </h1>
            
    
     possono esserci vari tag  html</p>
            
            <h2>questa è <?php // controllo se è stato inviato il testo tramite il form 
    if ($_POST['modifica_parte_2'] != '') { 
    echo $_POST['modifica_parte_2']; // mo4tro il testo inviato 
    } 
    else { // altrimenti se non è stato inviato o se è vuoto 
    echo ' codice da sostituire'; // mostro il testo di default 
    }  ?> la seconda parte da modificare</h2>
            
            <h2>questa è la 
            <?php // controllo se è stato inviato il testo tramite il form 
    if ($_POST['modifica_parte_3'] != '') { 
    echo $_POST['modifica_parte_3']; // mostro il testo inviato 
    } 
    else { // altrimenti se non è stato inviato o se è vuoto 
    echo ' codice da sostituire'; // mostro il testo di default 
    }  ?> terza parte</h2>
            
            
            
            
    	</body>
    </html>

    Codice iframe alto form1.php

    codice:
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Documento senza titolo</title>
    </head>
    
    <body>
    
    <form action="demo.php" method="post" target="view">
    
    <input type="text" name="modifica_parte_1">
    
    
    <input name="submit" type="submit" value="Prova Codice" onclick="displayad()" style="float:left;">
    
    </form>
    
    </body>
    </html>
    Codice secondo iframe form2.php

    codice:
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Documento senza titolo</title>
    </head>
    
    <body>
    
    <form action="demo.php" method="post" target="view">
    
    <input type="text" name="modifica_parte_1">
    
    
    <input name="submit" type="submit" value="Prova Codice" onclick="displayad()" style="float:left;">
    
    </form>
    
    </body>
    </html>
    Codice terzo iframe form3.php

    codice:
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Documento senza titolo</title>
    </head>
    
    <body>
    
    <form action="demo.php" method="post" target="view">
    
    <input type="text" name="modifica_parte_1">
    
    
    <input name="submit" type="submit" value="Prova Codice" onclick="displayad()" style="float:left;">
    
    </form>
    
    </body>
    </html>

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709

    [spostare HTML/JavaScript]

    non è un problema php... tu devi realizzare tre "link" o "pulsanti" che semplicemente aprano la destinazione nel frame di riferimento: puoi usare JavaScript per controlli più raffinati, oppure più semplicemente fare dei link con l'attributo TARGET settato con il nome dell'iframe che vuoi modificare

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2012
    Messaggi
    43
    Scusa la mia ignoranza ma come potrei realizzare questi tre pulsanti utilizzando l'attributo TARGET o con quale comando javascript potrei ottenere tale risultato? Perche io sono riuscito a creare i 3 link sui tre pulsanti ma cliccando su ognuno di questi pulsanti questi fanno ricaricare tutta la pagina html principale e non soltanto gli iframe interessati.

    Comunque se questa è la sezione sbagliata prego qualche moderatore affinche possa spostarmi nella giusta sezione. Grazie.

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    [in attesa dello spostamento] quando crei i frame dagli un ID e poi nei link aggiungi l'attributo TARGET che punta a quel ID, es.:

    codice:
    ...
    <iframe src="form1a.html" id="form1">
    ...
    <a href="form1b.html" target="form1">
    ...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.