Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    13

    una pagina php con link ad altri files php

    Salve, scusate il titolo intrigato, uso php con apache su un sistema linux che sfrutto per la domotica, mi sono fatto tutto da solo, pero' adesso vorrei raffinare la tecnica che, sicuramente, sara' troppo confusa.

    Veniamo al dunque vi posto un esempio di una pagina cosi' capiamo meglio:

    codice:
    <html>
    <body><TITLE>Gestione Fancoil 2</TITLE>
    <?php
    include ("connect.php");
    include ("ow.php");
    include ("color.php");
    $linea1=($ow->read("fancoil2/PIO.1"));
    $linea2=($ow->read("fancoil2/PIO.2"));
    $linea3=($ow->read("fancoil2/PIO.3"));
    $linea4=($ow->read("fancoil2/PIO.4"));
     if($linea1==1){$a5=OFF;}elseif($linea1==0){$a5=ON;}else{$a5=ERROR;}
     if($linea1==1){$a6=RED;}elseif($linea1==0){$a6=GREEN;}else{$a6=BLACK;}
     if($linea2==1){$l4=RED;}elseif($linea2==0){$l4=GREEN;}else{$l4=BLACK;}
     if($linea3==1){$l3=RED;}elseif($linea3==0){$l3=GREEN;}else{$l3=BLACK;}
     if($linea4==1){$l2=RED;}elseif($linea4==0){$l2=GREEN;}else{$l2=BLACK;}
     if($linea1==1){$b1="fancoil2_off.php";}elseif($linea1==0){$b1="fancoil2_on.php";}else{$b1="1.php";}
     if($linea2==1){$b2="fancoil2_max_off.php";}elseif($linea2==0){$b2="fancoil2_max_on.php";}else{$b2="1.php";}
     if($linea3==1){$b3="fancoil2_med_off.php";}elseif($linea3==0){$b3="fancoil2_med_on.php";}else{$b3="1.php";}
     if($linea4==1){$b4="fancoil2_min_off.php";}elseif($linea4==0){$b4="fancoil2_min_on.php";}else{$b4="1.php";}
     if($linea1==0){$image="green_bl.gif";}elseif($linea1==1){$image="red_bl.gif";}else{$image="error.gif";}
    ?>
    <table  width="80%" height="80%" border="5" align="center" bordercolor=<?=$imagebg?>>
    <tr><th width="80%" height="10%"bgcolor="white" align="center">[img]/image/<?php echo $image;?>[/img]
    <tr><th width="80%" bgcolor="white" align="center"><center><font size="+4">FANCOIL CAMERA </font><a href=<?=$b1?>>[b]<font size="+4" color=<?=$a6?>><?php echo $a5;?></font></center>
    
    <tr><th width="80%" bgcolor="white" align="center"><center><font size="+4" color=<?=$l2?>><font size="+4">VELOCITA' VENTOLA </font>[b]  1</font></center><th width="20%" bgcolor="white" align="center"><a href=<?=$b4?>>[img]/image/vent.gif[/img]
    
    <tr><th width="80%" bgcolor="white" align="center"><center><font size="+4" color=<?=$l3?>><font size="+4">VELOCITA' VENTOLA </font>[b]  2</font></center><th width="20%" bgcolor="white" align="center"><a href=<?=$b3?>>[img]/image/vent.gif[/img]
    
    <tr><th width="80%" bgcolor="white" align="center"><center><font size="+4" color=<?=$l4?>><font size="+4">VELOCITA' VENTOLA </font>[b]  3</font></center><th width="20%" bgcolor="white" align="center"><a href=<?=$b2?>>[img]/image/vent.gif[/img]
    
    </TABLE>
    <table  width="80%" height="10%" border="3" align="center" bordercolor=<?=$imagebg?>>
    <TR><TH width="40%" bgcolor="white" align="center"><font size="+4">TELECOMANDO FANCOIL</font><TH width="40%" bgcolor="white" align="center"><font size="+4">TELECOMANDO</font>
    </TABLE>
    <META HTTP-EQUIV='refresh' CONTENT='120; /cgi-bin/fancoil2.php'>
    </body>
    </html>

    Come vedete le variabili $b2, $b3, $b4 e $b1 richiamano altri files php che eseguono semplicemente un'istruzione php eccone un in esempio:


    codice:
    <html>
    <body>
    <?php
    include ("connect.php");
    include ("ow.php");
    $query1="UPDATE devices SET valore=2 WHERE id_cat=50";
    mysql_query($query1);
    $ow->set("/fancoil3/PIO.BYTE",2);
    ?>
    <div align="center">Disattivo Velocita' MINIMA....</div>
    <META HTTP-EQUIV='refresh' CONTENT='1; /cgi-bin/fancoil3.php'>
    </body>
    </html>
    Qualcuno mi potrebbe suggerire come fare eseguire il contenuto di quest'ultima pagina nella prima senza dover richiamare da una pagina un altra pagina?

    Grazie

  2. #2
    usare un framework che ti costringa a dividere le azioni dalla presentazione?
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    13
    Scusa ma non sono molto bravo, potresti essere più chiaro?

  4. #4
    scusa avevo capito male (anche se cmq il sugegrimento resta valido)

    se vuoi far eseguire l'azione (tipo: disattivazione velocità minima) senza cambiar pagina, devi usare AJAX: al click sul bottone parte una chiamata asincrona ad una pagina php che effettuerà la disattivazione. Cmq il problema qui è ajax-iano. Altrimenti usa un iframe, metti tale iframe come target al link e invece di farti stampare un div e un redirect fai una alert in javascript...Io cmq opterei per la prima soluzione
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    13
    Sto leggendo ma non riesco a trovare il sistema di collegare l'utilizzo della chiamata asicnrona alla mia situazione

    Saresti cosi' gentile da darmi uno spunto per la partenza con un piccolo esempio ?

  6. #6
    Originariamente inviato da Emblema
    Sto leggendo ma non riesco a trovare il sistema di collegare l'utilizzo della chiamata asicnrona alla mia situazione

    Saresti cosi' gentile da darmi uno spunto per la partenza con un piccolo esempio ?
    http://www.manuelmarangoni.it/sir-bi...mpio-completo/

    sostanzialmente l'idea è di fare una chiamata ad una pagina php usando javascript (in maniera da non modificare la navigazine dell'utente), pagina php che eseguirà qualche lavoro e restituirà (se serve) un risultato (come frammento html/json/xml/testo/etc) che il javascript (in maniera sincrona/asincrona alla chiamata) userà

    ora per farti l'esempio dovrei dirti che esistono i framework js e bla bla e fai la chiamata bla bla etc etc e non ne ho il tempo, spero che quel link che ti ho postato (ricerca by google da 0.2 ms) ti possa dare un'idea di massima, tanto da provare a buttare giù qualcosa e quindi parlare successivamente sul codice tuo
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

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 © 2024 vBulletin Solutions, Inc. All rights reserved.