• Home
  • Forum
  • Fare Web
  • PHP

richiamare variabile

  • Creatore Discussione Creatore Discussione nim
  • Data di inizio Data di inizio 19 Ott 2011
  • 1
  • 2
Succ.
1 di 2 Succ. Ultimo

nim

Utente Attivo
11 Ott 2011
96
0
0
  • 19 Ott 2011
  • #1
buonasera a tutti
vi spiego: l'action di un form conduce dalla pagina index.php alla pagina 2.php...nella index.php avevo scritto delle variabili e ora mi servirebbe che queste variabili siano stampate nella pagina 2.php ..
ovviamente se richiamo nella seconda pagina un variabile appartenente alla prima non funziona nulla,
mi potete aiutare a capire come poter richiamare la variabile da un atro file?
 
Ultima modifica: 19 Ott 2011

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 19 Ott 2011
  • #2
Posta il codice delle due pagine e dicci quali variabili vorresti passare dalla prima alla seconda.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 19 Ott 2011
  • #3
ciao
o le trasmetti con un campo hidden dal form e poi le ricevi sempre con il $_POST, oppure nella index le passi in sessione e poi nelle altre ti leggi le sessioni
 

nim

Utente Attivo
11 Ott 2011
96
0
0
  • 19 Ott 2011
  • #4
PHP:
     <?php
//definiamo il percorso alla cartella sorgente
$path="musica/";

//stabiliamo i formati riconoscibili
$formati=array('avi','mp3');

//apriamo la cartella che contiene le immagini
$open = opendir($path);

//leggiamo tutte le immagini con un ciclo
  $canzone=array();
  while(false !== ($f=readdir($open))) { 
    for($i=0;$i<count($formati);$i++){
       $formato=substr($f,(strlen($f)-3),strlen($f));
         if(in_array($formato,$formati)){
          $canzone[]=$f;
        }
     }
  }
  
  //mostriamo l'immagine casuale 
  if(count($canzone)==0);
  {
  $info = rand(0,(count($canzone)-1));
   $canz1="$path$canzone[$info]";
 $questa1="$canzone[$info]";
  
  }
?>
altre righe html
<form action="votazione1.php" method="post" name="scelta">
<input type="submit" size="34" name="questa" value="<?php echo $questa1; ?>" style="WIDTH: 115px; HEIGHT: 33px">
</form>
devo richiamare $questa1 e stamparla nel nuovo file
@borgo italia mi dispiace ma credo di non sapere come si usano le funzioni da lei indicate,in questo caso.
 
Ultima modifica: 19 Ott 2011

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 19 Ott 2011
  • #5
Intanto diamo una sistemata allo script PHP:
PHP:
<?php
$canzoni = array_merge(glob('musica/*.avi'), glob('musica/*.mp3'));
?>
Questa unica riga fa quello che tu hai realizzato in 20.

Nel tuo script c'è qualcosa che mi sfugge, oltre al recupero dei file multimediali. Cosa dovrebbe fare poi lo script? Cerchiamo di trovare un modo migliore per farlo, insieme.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 19 Ott 2011
  • #6
ciao
inoltre non vedo dove inizializzi la variabile $questa1, se non ha un valore al massimo trasmetti un valore NULL (o vuoto)
 

nim

Utente Attivo
11 Ott 2011
96
0
0
  • 19 Ott 2011
  • #7
va bene.. lo script dovrebbe estrarmi dalla cartella "musica" un file multimediale casualmente con un random...
poi dovrebbe esserci un button con value = "titolo della canzone "(nello script $questa1 ) che al click mi aziona votazione1.php..in votazione1.php voglio che si stampi $questa1..
spero di essere riuscito a chiarire
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 19 Ott 2011
  • #8
Allora basta che nella pagina index.php metti:
PHP:
<?php
$canzoni = array_merge(glob('musica/*.avi'), glob('musica/*.mp3'));

if (empty($canzoni)) {
    die('Non ci sono canzoni da visualizzare.');
}

shuffle($canzoni);
$canzone = $canzoni[0];

echo <<<EOF
<form action="votazione1.php" method="post">
    <input type="submit" name="canzone" value="{$canzone}" />
</form>
EOF;
?>
E nella pagina votazione1.php:
PHP:
<?php
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
    header('Location: index.php');
    exit();
}

echo "Hai votato {$_POST['canzone']}!";
?>
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 19 Ott 2011
  • #9
@alex
molto elegante !!
poi aprirò un post per farti una domanda
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 19 Ott 2011
  • #10
borgo italia ha scritto:
@alex
molto elegante !!
Clicca per allargare...
Gvazie, cavissimo!
 

nim

Utente Attivo
11 Ott 2011
96
0
0
  • 20 Ott 2011
  • #11
prima di tutto ringrazio per la disponibilità..
ma chiedo , nel dettaglio mi spieghereste cosa succede con il codice linkatomi?
cioè so che viene raccolto l'array comprendente i file nella cartella musica...
ma poi dove viene riprodotta la canzone casualmente scelta dalla cartella?
grazie in anticipo
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 20 Ott 2011
  • #12
Nella pagina index.php viene scelto un file .avi o .mp3 dalla cartella musica e viene impostato come valore del bottone di submit del form. Se non c'è alcun file nella cartella viene visualizzato un errore.

Nella pagina votazione1.php se il metodo della richiesta è POST viene visualizzata la canzone scelta, altrimenti si reindirizza al form (perché l'utente ha tentato di accedere direttamente al file).

Se vuoi che venga riprodotto il brano scelto dovrai installare un player nel tuo sito, ma per questo apri un'altra discussione.
 

nim

Utente Attivo
11 Ott 2011
96
0
0
  • 20 Ott 2011
  • #13
va bene però ora ho provato a inserire il codice da lei inviatomi però mi appare sempre il die..cioè che non ci sono file da visualizzare ,
eppure caricata nel server c'è una cartella con 9 file .mp3.. forse un'errore di battitura?
a scanso di equivoci ho creato una pagina totalmente bianca con soltanto il suo codice da inserire nella index e il risultato è sempre il DIE.
prego di avere pazienza.
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
27
Roma
alessandro1997.netsons.org
  • 20 Ott 2011
  • #14
Prova ad inserire:
PHP:
var_dump($canzoni);
Dopo:
PHP:
$canzoni = array_merge(glob('musica/*.avi'), glob('musica/*.mp3'));
E vedi cosa stampa a video.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 20 Ott 2011
  • #15
ciao
la funzione glob ha un difetto, se nella cartella ci sono file (es.)
musica_1.mp3
musica_2.MP3
analogamente per avi AVI

$canzoni = array_merge(glob('musica/*.avi'), glob('musica/*.mp3'));

trova solo i file con estensione minuscola (esperienza dovuta a xyz.jpg mentre avevo xyz.JPG)
quindi verifica come sono scritte le estensioni
eventualmente aggiungi altri array_merge es.

$canzoni=array_merge($canzoni, glob('musica/*.MP3'));
 
Ultima modifica: 20 Ott 2011

nim

Utente Attivo
11 Ott 2011
96
0
0
  • 20 Ott 2011
  • #16
niente..ho aggiunto anche glob('musica/*.AVI') ma mi dice NULL, non trova alcun file..comunque sì, ci sono alcune canzoni con nome per esempio 01 - Ghosts 'n' Stuff.mp3
quindi con le maiuscole.
avete qualche altra idea?
perchè per esempio ho visto che nel codice che vi avevo scritto all'inizio,i file venivano letti e riprodotti(riprodotti con un player) .
comunque non funzia neanche con tutto minuscolo ...(appena provato)
altre idee?
 
Ultima modifica: 20 Ott 2011

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 20 Ott 2011
  • #17
ciao
non c'entrano le maiuscole/minuscole nella prima parte del titolo, stai usando una wildcard (l'asterisco), ma solo nell'estenzione.
prova a farti questo piccolo script (chiamalo ad es. cerca.php) e lancialo
PHP:
<?php
//devi ripetere 3 volte il merge
$canzoni = array_merge(glob('musica/*.avi'), glob('musica/*.mp3'));//crea un primo arry con gli .avi e .mp3, se ci sono
$canzoni = array_merge($canzoni, glob('musica/*.MP3'));//accoda all'array sopra gli eventuali .MP3
$canzoni = array_merge($canzoni, glob('musica/*.AVI'));//ulteriore accodamento degli eventuali .AVI
foreach($canzoni as $titolo){
	echo "titolo canzone $titolo<br>";
}
?>
però stai attento a dove lo metti. deve trovarsi nella cartella appena superiore alla cartella musica (altrimenti devi modificare il percorso)
es.
root
.. cerca.php
...|musica
......|titolo_1.mpr ecc..

lo script dovrebbe restituirti in output
titolo_1.mp3
titolo_27.avi
pinco_pallo.MP3
....
 

nim

Utente Attivo
11 Ott 2011
96
0
0
  • 20 Ott 2011
  • #18
guardi ho scritto quello che mi ha detto in un file prova.php, il percorso è giusto ma non trova niente..non vorrei aver sbagliato qualcosa ma il codice è quello scritto da lei,il percorso c'è,,non capisco proprio..(dentro la cartella musica c'è un file sasasa.mp3)
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.044
150
63
PR
www.borgo-italia.it
  • 20 Ott 2011
  • #19
ciao
strano, se il percorso è quello giusto e i file ci sono dovrebbe funziare.
piccolo dubbio che versione di php hai?
glob funzia PHP 4 >= 4.3.0, PHP 5

se hai una versione precedente stiamo girando come trottole. eventualmente se è precedente aggiornala.

p.s.
non darmi del lei (tantomeno al baby alex)
 

nim

Utente Attivo
11 Ott 2011
96
0
0
  • 20 Ott 2011
  • #20
attualmente non avendo il computer perchè si è rotto ne sto usando un altro e siccome ce l'ho da poco faccio direttamente gli upload nel dominio in cui sono registrato,non faccio girare niente in locale..
non dovrebbe cambiare niente
 
  • 1
  • 2
Succ.
1 di 2 Succ. Ultimo
Devi accedere o registrarti per poter rispondere.

Discussioni simili

S
[PHP] Aiuto! Non riesco a richiamare una variabile
  • samurai.sette
  • 3 Nov 2016
  • PHP
Risposte
2
Visite
2K
PHP 2 Ago 2017
marino51
B
richiamare variabile javascript su pagina php
  • bluekid
  • 16 Ago 2015
  • Javascript
Risposte
4
Visite
3K
Javascript 16 Ago 2015
bluekid
B
P
Problema per richiamare una variabile...
  • pollat
  • 14 Apr 2014
  • PHP
Risposte
3
Visite
2K
PHP 14 Apr 2014
borgo italia
P
come richiamare una variabile
  • parsifal
  • 18 Gen 2014
  • PHP
Risposte
3
Visite
2K
PHP 21 Gen 2014
parsifal
P
Richiamare pagine PHP da variabile
  • minatore
  • 14 Lug 2008
  • PHP
Risposte
14
Visite
3K
PHP 17 Lug 2008
minatore
G
utilizzo variabile per richiamare una pagina
  • guliver
  • 9 Ott 2007
  • Ajax
Risposte
1
Visite
2K
Ajax 11 Ott 2007
jan267
M
Richiamare una singola funziona da file php
  • maxus68
  • 31 Mag 2020
  • PHP
Risposte
2
Visite
2K
PHP 31 Mag 2020
maxus68
M
M
Richiamare funziona da file esterno
  • Marcolino92
  • 3 Mar 2020
  • jQuery
Risposte
0
Visite
2K
jQuery 3 Mar 2020
Marcolino92
M
Gestione funzione in javascript in tabella richiamare"textarea" valori preimpostati in "select"
  • psicomia
  • 9 Giu 2019
  • Javascript
Risposte
2
Visite
2K
Javascript 10 Giu 2019
psicomia
V
[Visual Basic] Richiamare funzione su modulo per restituire list
  • visualrenzo
  • 23 Feb 2019
  • Visual Basic
Risposte
0
Visite
3K
Visual Basic 23 Feb 2019
visualrenzo
V
T
[Javascript] Richiamare un file.js (iframe) in html
  • tixie
  • 23 Gen 2019
  • Javascript
Risposte
1
Visite
2K
Javascript 23 Gen 2019
criric
A
Richiamare funzioni esterne JS da PHP
  • AndreaJK01
  • 9 Lug 2018
  • PHP
Risposte
9
Visite
11K
PHP 11 Lug 2018
marino51
C
richiamare una funzione in un altro script php
  • cosmo98
  • 1 Giu 2018
  • PHP
Risposte
1
Visite
5K
PHP 4 Giu 2018
bubino8
A
[Flash] richiamare JS da AS3
  • acweb-2004
  • 1 Mar 2018
  • Flash
Risposte
0
Visite
2K
Flash 1 Mar 2018
acweb-2004
A
G
[PHP] RICHIAMARE TABELLA I CUI VALORI SONO STAMPATI A VIDEO E MODIFICARLI
  • giacomo9783
  • 30 Ott 2017
  • PHP
Risposte
6
Visite
2K
PHP 31 Ott 2017
giacomo9783
G
[WordPress] Richiamare nel mio sito numero iscritti da gruppo Facebook
  • Shyson
  • 3 Set 2017
  • WordPress
Risposte
0
Visite
1K
WordPress 3 Set 2017
Shyson
A
[Javascript] richiamare lo pseudo elemento after
  • alessandro83125
  • 24 Ott 2016
  • Javascript
Risposte
1
Visite
1K
Javascript 25 Ott 2016
criric
B
[Javascript] Richiamare un attributo DATA
  • bruniko
  • 12 Ago 2016
  • Javascript
Risposte
0
Visite
1K
Javascript 12 Ago 2016
bruniko
B
richiamare una funzione da un'altra funzione
  • gandalf1959
  • 18 Mag 2016
  • PHP
Risposte
1
Visite
4K
PHP 18 Mag 2016
gandalf1959
richiamare una funzione: funziona solo la seconda volta...
  • gandalf1959
  • 10 Mag 2016
  • PHP
Risposte
7
Visite
2K
PHP 11 Mag 2016
gandalf1959
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?