[PHP] da option a input type

Domenico2013

Utente Attivo
6 Ago 2013
149
0
16
Buongiorno a tutti del forum, ho questo codice che funziona perfettamente. Ho la necessità di fare apparire il contenuto NON in una option ma in text con relativo pulsante che permetta di avviare la pagina indicata nel link. spero di essere stato chiaro. Grazie.:

PS: Scusate ho modificato il codice in questo modo, funziona bene solo che compaiono alcuni form vuoti, vi allego una foto del risultato.

PHP:
<?php
$directory = "./cartelle_dinamiche/";
if (is_dir($directory)) {
if ($directory_handle = opendir($directory)) {
while (($file = readdir($directory_handle)) !== false) {
if((!is_dir($file))&($file!=".")&($file!=".."))

print "<form action=\"visualizza_per_cartella.php\" method=\"post\">";
print "<input type=\"text\" value=\"$file\" name=\"visualizza_per_cartella\"/>";
print "<input type=\"submit\" value=\"$file\"/>";
print "</form>"; }
}
closedir($directory_handle);
}
?>
 

Allegati

Ultima modifica di un moderatore:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.041
146
63
PR
www.borgo-italia.it
ciao
scusa, ma non ho capito bene, premendo il submit vorresti andare alla pagina con nome $file?

p.s.
quando scrivi del codice utilizza gli appositi bccode o innserisci (barra formattazione del post) -> codice->scrivi il codice e seleziona quale
 

Domenico2013

Utente Attivo
6 Ago 2013
149
0
16
Ciao Borgo Italia, lo script funziona benissimo, se guardi l'allegato, noti che c'è :
kelly, casetta, philips....ma tra questi si creano anche delle righe con 1 puntino e 2 puntini.
Come posso non far comparire questi puntini visto che non servono a nulla? spero di essere stato chiaro. Grazie.
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.041
146
63
PR
www.borgo-italia.it
ciao
prova a correggere l'if
PHP:
if((!is_dir($file))&($file!=".")&($file!=".." & !empty($file)))
poi scusa se devi leggere i file contenuti nella cartella "./cartelle_dinamiche/"
perchè non usi la funzione glob()? ti semplificherebbe la vita
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.041
146
63
PR
www.borgo-italia.it
ciao
ti posto script con glob
il primo usando il tuo metodo del form
il secondo usando un button
in entrambi i casi controlla i percorsi
PHP:
<?php
//primo
$directory = "./cartelle_dinamiche/*.php";//se cerchi file php, se invece cerchi file html al posto di php scrivi html
$files=glob($directory);//estrae in un array $files[0]=pinco.php $files[1]=pallo.php ecc....
foreach($files as $file){
    print "<form action=\"visualizza_per_cartella.php\" method=\"post\">";
    print "<input type=\"text\" value=\"$file\" name=\"visualizza_per_cartella\"/>";
    print "<input type=\"submit\" value=\"$file\"/>";
    print "</form>";
}
?>
PHP:
<?php
//secondo
$directory = "./cartelle_dinamiche/*.php";
$files=glob($directory);//array con tutti i files della cartella
foreach($files as $file){
    echo "<button onclick=\"location.href=$file\">vai a $file</button><br>";
}
?>
il secondo ha il vantaggio che apre direttamente la pagina
 

Domenico2013

Utente Attivo
6 Ago 2013
149
0
16
Ciao Borgo Italia, purtroppo il codice non va bene, facendo varie prove ho notato che il problema sta in questa porzione di codice:
Se elimino la riga del form action ...... scompaiono anche i puntini, ma io ho necessità di inviare il contenuto del campo input type... alla pagina visualizza_per_cartella.php, spero di essere stato chiaro. Grazie e scusa del disturbo.

print "<form action=\"visualizza_per_cartella.php\" method=\"post\">";
print "<input type=\"text\" value=\"$file\" name=\"visualizza_per_cartella\">";
print "<input type=\"submit\">";
print "</form>";
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.041
146
63
PR
www.borgo-italia.it
ciao
prova questa dove ho modificato l'invio tramite button al posto del tuo sistema col form, anzi molti form (ricorda che quando si hanno diversi form è bene che ogniuno abbia un name diverso) con cui trasmetti due volte la stessa cosa una coll'input text e una col input submit
PHP:
<?php
//secondo modificato
$directory = "./cartelle_dinamiche/*.php";
$files=glob($directory);//array con tutti i files della cartella
foreach($files as $file){
    echo "<button onclick=\"location.href=visualizza_per_cartella.php?file=$file\">vai a $file</button><br>";
}
?>
poi nella pagina visualizza_per_cartella.php ricevi
PHP:
<?php
$file=$_GET['file'];
//.......
?>
poi eventualmente spiegami cosa fa la pagina visualizza_per_cartella.php
comunque poi dopo ci sentiamo dopo natale
 

Domenico2013

Utente Attivo
6 Ago 2013
149
0
16
Ciao Borgo Italia, grazie mille funziona benissimoooooooooooooooo! Ho modificato un pò il codice e va benissimo.
Lo posto nel caso possa servire a qualche altro Utente. Grazie e buon Natale. Alla prossima.

PHP:
<?php
$directory = "./cartelle_dinamiche/*";
$files=glob($directory);//array con tutti i files della cartella
foreach($files as $file){
print "<form method=\"get\"action=\"visualizza_per_cartella_post.php\">\n";
$solo_nome = basename($file); // genera il nome originale delle cartelle
print "<button type=\"submit\" name=\"visualizza_per_cartella\" value=\"$solo_nome\">$solo_nome</button>\n";
print "</form>";
}
?>
 
Ultima modifica di un moderatore: