Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. Problemi con variabile di sessione e XML
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • A
      autodafe Super User • ultima modifica di

      mmm...
      Non sembrerebbe un problema legato a XML...

      Ora, nella pagina1 (quella di Joomla) anzichè costruire XML ho messo:
      **
      $_SESSION['feedcode']="pippo"**

      Nella pagina1, se faccio echo** $_SESSION['feedcode'];** mi scrive correttamente "pippo"

      La stessa istruzione nella pagina2 (la mia) non scrive nulla...
      Manca forse qualcosa a livello di Header?

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • A
        autodafe Super User • ultima modifica di

        Come faccio quindi a recuperare il valore di questa sessione? Dove se lo perde???:?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • F
          filippotoso User Attivo • ultima modifica di

          Secondo me hai un problema di propagazione della sessione.

          Prova ad inserire questo codice in entrambe le pagine e confrontane i risultati:

          [php]<?php echo(session_name() . ' => ' . session_id()); ?>[/php]

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • A
            autodafe Super User • ultima modifica di

            Credo anche io, anche se non so perfettamente cosa ciò significhi in php...

            Risultato:

            pagina1:
            2b9632643123cb4354dfc096d4ffd0f7 => 9991f63a2e18839cd16157244d7eb3df

            pagina2:
            PHPSESSID => eb0f910ae3098944e452a1bf2ac88f7c

            Non legge la stessa roba direi :mmm:
            :arrabbiato:

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • F
              filippotoso User Attivo • ultima modifica di

              Prova a modificare la pagina2 in questo modo:

              [php]<?php
              session_name('2b9632643123cb4354dfc096d4ffd0f7');
              session_start();
              echo($_SESSION['feedcode']);
              ?>[/php]

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • A
                autodafe Super User • ultima modifica di

                Niente...
                Pagina bianca....

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • I
                  ilnetsurfer User Attivo • ultima modifica di

                  Innanzitutto..
                  prova con
                  var_dump($_SESSION);
                  e vedi cosa ti esce...
                  poi potresti provare così:

                  Crea il file sessione.php con questo codice dentro:
                  <?php
                  ini_set('session.use_cookies', 1);
                  ini_set('session.use_only_cookies',1);
                  session_start();
                  ?>

                  poi modifica il codice così:

                  require "sessione.php";

                  $_SESSION['feedcode']="<?xml version='1.0' encoding='ISO-8859-1'?>
                  <rss version='2.0' xmlns:dc='http://purl.org/dc/elements/1.1/' xmlns:content='http://purl.org/rss/1.0/modules/content/'>
                  <channel>";

                  $_SESSION['feedcode']=$_SESSION['feedcode']."<title>".$title."</title><link>http://www.miosito.ext/news/</link><description>Notizie al Web a cura di MioSito.ext</description><language>it</language>";

                  ....QUI SCRIVO ALTRA ROBA IN $_SESSION['feedcode']...RIMOSSO PER ABBREVIARE

                  $_SESSION['feedcode']=$_SESSION['feedcode']."</channel></rss>";
                  ?>

                  <a href="./modules/mod_eventlist_rss/events_rss.php">Live Feeds</a>

                  E poi...

                  <?php

                  require "sessione.php",

                  echo (isset($_SESSION['feedcode'])) ? $_SESSION['feedcode'] : "Impossibile trovare la sessione";

                  ?>

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • A
                    autodafe Super User • ultima modifica di

                    Dopo il tuo suggerimento:

                    
                    **Warning**:  session_start() [[function.session-start](http://www3.pipeline.it/modules/mod_eventlist_rss/function.session-start)]: Cannot send session cookie - headers already sent by (output started at /home/web/public_html/modules/mod_eventlist_rss/events_rss.php:5) in **/home/web/public_html/modules/mod_eventlist_rss/session.php** on line **4**
                    
                    **Warning**:  session_start() [[function.session-start](http://www3.pipeline.it/modules/mod_eventlist_rss/function.session-start)]: Cannot send session cache limiter - headers already sent (output started at /home/web/public_html/modules/mod_eventlist_rss/events_rss.php:5) in **/home/web/public_html/modules/mod_eventlist_rss/session.php** on line **4**
                    Impossibile trovare la sessione  
                    
                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • A
                      autodafe Super User • ultima modifica di

                      togliendo dall'ultima pagina "require(sessione.php)"

                      ho solo:

                      "Impossibile trovare la sessione"

                      :arrabbiato:

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • I
                        ilnetsurfer User Attivo • ultima modifica di

                        Uhm...ripeto la domanda di prima...cosa ottieni con
                        var_dump($_SESSION);
                        ?
                        Poi, per il warning..ti suggerisco di modificare il file sessione cosi:
                        <?php
                        session_start();
                        $feedcode ="";
                        session_register("feed_code");
                        ?>

                        E modifica il file cosi:

                        <?php

                        require "sessione.php",

                        echo (session_is_registered('feedcode')) ? $_SESSION['feedcode'] : "Impossibile trovare la sessione";

                        ?>

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • A
                          autodafe Super User • ultima modifica di

                          Dunque...
                          Mi ero dimenticato questo test...
                          Ho messo definitivamente come test "pippo" nella sessione per evitare problemi dovuti a XML
                          Il "var_dump($_SESSION);" nella pagina1 dà un amarea di roba tra cui ["feedcode"]=> string(5) "pippo" } (quindi la sessione fin lì c'è)

                          Nella pagina 2 invece dà "NULL"....(quindi si è perso la sessione?)

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • A
                            autodafe Super User • ultima modifica di

                            Ohi Ohi...
                            Dunque:
                            il tuo ultimo esempio ha avuto come risultato:

                            "Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line **0"

                            register_globals **è su OFF in effetti...C'entra questa opzione?

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • I
                              ilnetsurfer User Attivo • ultima modifica di

                              No, non disattivare register_globals, porterebbe ad un alto calo di sicurezza..
                              direi che si è proprio persa la sessione...

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • A
                                autodafe Super User • ultima modifica di

                                OK,
                                Comunque ieri stavo pensando di risolvere così (dovrebbe funzionare e mi pare anche più pulito...)

                                Nella pagina1 chiamo una funzione su pagina2 a cui passo come parametro il contenuto XML. La pagina2 deve a quel punto solo prendere ciò che le arriva e fare echo...

                                O no???;)

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • F
                                  filippotoso User Attivo • ultima modifica di

                                  A quel punto ti basta ob_start()/include()/ob_get_clean()

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  Caricamento altri post
                                  Rispondi
                                  • Topic risposta
                                  Effettua l'accesso per rispondere
                                  • Da Vecchi a Nuovi
                                  • Da Nuovi a Vecchi
                                  • Più Voti