Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    inviare un NUMERO in una pagina PHP

    salve a tutti e ben tornati dalle ferie ....

    allora molto semplicemente, vorrei spedire una variabile contenente un numero, da flash a php....

    la variabile i contiene il numero:
    codice:
    i--; // la variabile i  è generata precedentemente da un ciclo FOR 
    mini = new LoadVars();
    mini.i = i ;
    mini.sendAndLoad("img_mini.php", mini, "POST");
    mini.onLoad = function() {
         mc.loadMovie("img_mini.php");
         };
    mentre nella pagina PHP:
    codice:
    <?php
    include ("config2.inc.php");
    $i = $_POST['i'];
    $query = "SELECT img FROM info_siti";
    $select = @mysql_query($query) or die("Query fallita !");
    $data = @mysql_result($select,$i);
    header("Content-type: image/pjpeg");
    $lunghezzaFileImmagine = strlen ($data);
    header("Content-Length: ". $lunghezzaFileImmagine); 
    echo $data;
    mysql_close ($connessione) or die (errore());
    ?>
    in questo caso, sembra che la pagina php nn riconosce il contenuto della variabile $i come NUMERO :
    se invece della variabile $i (nella pagina php) inserisco un valore lo script funziona

    qualche suggerimento???
    grazie mille

  2. #2
    $i = isSet( $_POST['i'] ) && intval( $_POST['i'] ) > 0 ? intval( $_POST['i'] ) : 0;

    if( $i == 0 ) {
    die( "&error=true" );
    }
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  3. #3
    Originariamente inviato da andr3a
    $i = isSet( $_POST['i'] ) && intval( $_POST['i'] ) > 0 ? intval( $_POST['i'] ) : 0;

    if( $i == 0 ) {
    die( "&error=true" );
    }
    grazie mille andr3a, ma niente da fare, stesso problema...
    ho fatto diverse prove (visto che il controllo di i=0 o i= vuoto lo eseguo già in flash) sostituendo $i = int( $_POST['i'] ); con $i = intval($_POST['i']); e con $i = int( $_POST['i'] );

    LINK PROVA: praticamente dovrebbero visualizzarsi 4 img contenute in un MySql

  4. #4

  5. #5
    Originariamente inviato da alempas
    (visto che il controllo di i=0 o i= vuoto lo eseguo già in flash)
    e se facessi una pagina html con un form che invia in post una var i con numeri qualsiasi e ti incasinassi lo script o mandassi a meretrici il database ???


    controlla sempre E in flash, E in PHP ... a prescindere da quello che devi fare ... aggiungo che e' molto meglio un controllo in PHP piuttosto che in flash, quindi se devi scegliere tra i 2 o fai entrambi o fai solo PHP ( l' swf lo decompili , PHP non lo vedi ... )


    Detto questo, l' esempio che ti ho postato serve ad inviare a flash nell' onLoad il this["error"]

    var.onLoad = function( success ) {
    if( success && this["error"] == undefined ) {
    // fai
    }
    else if( this["error"] != undefined ) {
    trace( this["error"] );
    }
    else {
    trace( "impossibile caricare la pagina" );
    }
    }


    insomma monitorizzati i vari passaggi, compre la query e il resto




    mysql_query( $query ) or die( "&error=".mysql_error() );



    etc. ... etc ...

    per il resto non so che die, non esistono problemi in invio numero da flash a php che io sappia
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  6. #6
    aggiungo che se speri che con un LoadVars ti arrivi una jpeg in flash, sei fuori strada ... devi usare un loadMovie o un MovieClipLoader dove il valore i lo passi via $_GET


    myMc.loadMovie( "pagina.php?i=" + i );


    col LoadVars fai poco ... se e' quello che ho capito che penso di aver capito
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #7
    andr3a:
    controlla sempre E in flash, E in PHP ... a prescindere da quello che devi fare ... aggiungo che e' molto meglio un controllo in PHP piuttosto che in flash, quindi se devi scegliere tra i 2 o fai entrambi o fai solo PHP ( l' swf lo decompili , PHP non lo vedi ... )
    , giusto



    andr3a:
    aggiungo che se speri che con un LoadVars ti arrivi una jpeg in flash, sei fuori strada
    nn credo sia errato caricare un'img con LoadVars(), visto che già lo faccio (sito in firma > gallery > internet site).....
    la differenza tra questo script e quello utilizzato nel mio sito è:
    - nel mio sito, lo script richiama l'ID della riga nella tabella contenente l'img (tutto funge)
    - nel nuovo script, nn voglio utilizzare un'ID per pescare l'img (per problemi dovuti nell'amministrazione, quando elimino un record), ma contare il numero totale delle righe presenti nella tabella, e visualizzare una riga alla volta (prima riga, seconda riga ecc) appunto utilizzando mysql_result($select,$i);. Il problema nasce con $i , infatti, come detto prima, se inserisco un numero (ad esempio 3: mysql_result($select,3 ); ), il filmato stampa N volte la stessa img....

    l'errore sta in $i:
    codice:
    $i = $_POST ['i']; //nn stampa l'img (neanche con il tuo script)
    $i = 3 ; //stampa l'img della riga 3 della tabella in questione
    mysql_result($select, $i);

  8. #8

    Re: inviare un NUMERO in una pagina PHP

    Originariamente inviato da alempas
    codice:
    i--; // la variabile i  è generata precedentemente da un ciclo FOR 
    mini = new LoadVars();
    mini.i = i ;
    mini.sendAndLoad("img_mini.php", mini, "POST");
    mini.onLoad = function() {
         mc.loadMovie("img_mini.php");
         };
    mi sono accorto ora che se tu nell' onLoad scrivi mc.loadMovie("img_mini.php"); dove img_mini.php e' la pagina descritta, ti credo che non arriva il post ...


    non e' settato , per questo ho scritto

    $i = isSet( $_POST['i'] ) .... il sendAndLoad lo fa ma poi carichi senza il $_POST e in loadMovie ... mi sa che tu hai un po' di confusione in testa, dormici su e rileggi sto 3D domani


    codice:
    var i:Number = 3;
    
    var mini:LoadVars = new LoadVars();
    mini.i = Number( i );
    mini.onLoad = function() {
    	// qui carichi img_mini.php senza il post, 
    	// .... come fai a fare la query ???
    	mc.loadMovie( "img_mini.php" );
    }
    // qui invii mini.i come $_POST['i'], tutto ok ... 
    mini.sendAndLoad( "img_mini.php", mini, "POST" );
    
    
    
    
    // per questo ti dicevo passa in GET ...
    // ... e senza LoadVars ...
    mc.loadMovie( "img_mini.php?i=1" );
    
    // vedrai che va se metti $_GET invece di $_POST in img_mini.php





    $i = isSet( $_POST['i'] ) && intval( $_POST['i'] ) > 0 ? intval( $_POST['i'] ) : 0;
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  9. #9

    Re: Re: inviare un NUMERO in una pagina PHP

    Originariamente inviato da andr3a
    ... mi sa che tu hai un po' di confusione in testa, dormici su e rileggi sto 3D domani
    già... mi sà che ci dormo sopra anche sta sera e lo rivedo domani..... grazie per il suggerimento e tempo dedicatomi.

    Anche se continuo a nn capire perchè sul mio sito lo script funziona, mentre lo stesso script applicato da un'altra parte no :master: ?????
    va bò, i soliti fantasmi della programmazione


    mi rifarò vivo appena avrò tempo per testare lo script
    e grazie ancora

  10. #10

    Re: Re: Re: inviare un NUMERO in una pagina PHP

    Originariamente inviato da alempas
    va bò, i soliti fantasmi della programmazione
    non esistono fantasmi nella programmazione, salvo quelli creati dagli sviluppatori


    cmq cosi' com'e' non puo' funzionare se il file .php si aspetta un valore in post e carichi col loadMovie ... evidentemente c'e' altor di diverso, magari proprio il file .php
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

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.