• User Attivo

    Problema PHP

    Saluto tutti in particolor modo GIORGIO.
    Sono un nuovo utente del forum.
    Avrei alcune domande da fare e possibilmente desidererei delle risposte. :eheh:
    Ho letto abbastanza le discussioni del forum le quali in alcuni casi mi hanno risolto dei problemi incontrati col codice PHP.
    Il mio problema attuale è questo:
    Ho una pagina con un form e all'interno un menu di collegamento il quale dà il valore all' "option" prendendo i valori dal database e conservando la sessione, il tutto in un ciclo while.

    1° FILE:
    <form name="form_macchina" method="post" action="">
    <blockquote>
    <p class="titolo_form">SCEGLI CATEGORIA MACCHINA</p>
    <p class="sottotitolo_form">Se manca la Categoria premere sul pulsante <font color="#FFFFFF">Aggiungi</font>.</p>
    <p class="sottotitolo_form">Seleziona Categoria :</p>
    </blockquote>
    <table width="540" cellpadding="1">
    <!--DWLayoutTable-->
    <tr>
    <td width="147" height="26" valign="middle"><div align="right" class="nomi_form">* CATEGORIA </div></td>
    <td width="378" valign="middle"><select name="file_mac" class="campo_form">
    <?php
    $sel_all = "SELECT nome AS nomex, file AS filex FROM categoria ORDER BY id_categoria ASC";
    $query_sel_all = mysql_query($sel_all,$conn);
    while (($obj_sel_all=mysql_fetch_object($query_sel_all)))
    {
    $PHPSESSID=session_id();
    ?>
    <option value="<?php echo strip_tags($obj_sel_all->filex) . '&PHPSESSID=' . $PHPSESSID; ?>"><?php echo strip_tags($obj_sel_all->nomex); ?></option>
    <?php
    }
    ?>
    </select>
    <a href="in_categoria_da_macchina.php" target="_parent" class="link_form" onMouseOver="MM_displayStatusMsg('Aggiungi CATEGORIA');return document.MM_returnValue">Aggiungi</a> </td>
    </tr>
    <tr><td height="21" valign="top"><!--DWLayoutEmptyCell--> </td>
    <td valign="bottom"><input name="Button1" type="button" class="esempio_form" onClick="MM_jumpMenuGo('file_mac','parent',0)" value="Vai"></td>
    </tr>
    </table>
    </form>

    Come faccio a mandare al file di destinazione la variabile "strip_tags($obj_sel_all->nomex)" che è contenuta nel select ma nel nome visualizzato?
    Il valore dell'option mi serve per far aprire un file specifico


  • Moderatore

    Ciao.

    Se ho capito cosa intendi, puoi passarglielo con un campo hidden.

    :ciauz:


  • User Attivo

    Innanzitutto grazie per avermi risposto.
    E' una buona soluzione solo che non saprei proprio come mettere sto hidden nel ciclo while perchè ad ogni categoria trovata corrisponderebbe un campo hidden.


  • User Attivo

    Dimenticavo di dire che nel database esiste un campo in cui scrive automaticamente il file da aprire con la variabile della categoria
    es: file.php?cat=categoria
    Quindi ho passato al file che apre la variabile
    $cat = strip_tags($_HTTP_GET_VAR["cat"];
    Mi sono spiegato?


  • Moderatore

    Senza vedere il codice, così a naso:

    <input type="hidden" name="sadio" value="<?php echo strip_tags($obj_sel_all->filex); ?>" /> non va?

    che fa $obj_sel_all->filex ?
    dove la definisci?
    che classe è?


  • User Attivo

    In pratica nella tabella "categoria" del DB MYSQL ho 3 campi:
    1 - id_categoria
    2 - nome
    3 - file
    che compilo quando aggiungo una categoria.
    Nel campo "file" scrive il file da aprire e gli aggiungo la variabile "nome" prendendola dal nome appena inserito.
    ESEMPIO INSERIMENTO CATEGORIA NEL DB
    id_categoria - (è un auto increment)
    nome - VIDEOPOKER (lo scrivo dal form)
    file - mac_poker.php?cat=VIDEOPOKER (elenco menu , in cui nel select gli do valori quali: "mac_poker.php?cat=" oppure "mac_altre.php?cat=")

    Ecco il file **in_categoria.php **

    include("..\voci.php");
    include("....\config.php");
    //$mail = strip_tags($_POST["mail"]);
    if (isset($_POST["invia"]))
    {
    if ((!$_POST['nome']) || ($_POST['nome'] ==""))
    {
    echo $compilare_il_campo;
    }
    else
    {

    $nome = strip_tags($_POST["nome"]);
    $tipo = strip_tags($_POST["tipo"]);
    $file = $tipo.$nome;
    $insert = "INSERT INTO categoria (nome,file) VALUES ('" . $nome . "','" . $file . "')";
    mysql_query($insert,$conn);
    mysql_close($conn);
    echo $processo_corretto_nuova_categoria_da_macchina;
    }
    }
    else
    {
    ?>
    <form name="form_categoria" method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
    <blockquote>
    <p class="titolo_form">INSERISCI CATEGORIA </p>
    <p class="sottotitolo_form">Scrivi il <font color="#FFFFFF">NOME</font> della categoria - Es.: <font color="#FFFFFF">VIDEOPOKER</font></p>
    <p class="sottotitolo_form">Seleziona il <font color="#FFFFFF">TIPO</font> della categoria</p>
    </blockquote>
    <table width="430" cellpadding="1">
    <!--DWLayoutTable-->
    <tr>
    <td height="21" valign="middle"><div align="right" class="nomi_form">NOME CATEGORIA</div></td>
    <td valign="top"><input name="nome" type="text" class="campo_form" id="nome" size="25" maxlength="40"></td>
    </tr>
    <tr>
    <td height="21" align="right" valign="middle" class="nomi_form">TIPO</td>
    <td valign="top"><select name="tipo" class="campo_form">
    <option value="mac_poker.php?cat=">GIOCO - ADULTI</option>
    <option value="mac_altra.php?cat=">GIOCO - ALTRO</option>
    </select></td>
    </tr>
    <tr>
    <td height="21" valign="middle"><div align="right" class="nomi_form"></div></td>
    <td valign="top"><input name="invia" type="submit" class="esempio_form" id="invia" value="Inserisci"></td>
    </tr>
    </table>
    </form>
    <?php
    }
    //}
    ?>

    Dopo di che passo all'inserimento della macchina con il file **scelta_cat_mac.php **
    Ciò che fa questo file è di prendere tutto da tabella "categoria" e mettere come valore nell'option del select, in un ciclo while, il campo "file" seguito dalla variabile di sessione, altrimenti gli chiederebbe sempre e comunque user e pass.

    Eccolo:

    <form name="form_macchina" method="post" action="**scelta_cat_mac.php *">
    <blockquote>
    <p class="titolo_form">SCEGLI CATEGORIA MACCHINA</p>
    <p class="sottotitolo_form">Se manca la Categoria premere sul pulsante <font color="#FFFFFF">Aggiungi</font>.</p>
    <p class="sottotitolo_form">Seleziona Categoria :</p>
    </blockquote>
    <table width="540" cellpadding="1">
    <!--DWLayoutTable-->
    <tr>
    <td width="147" height="26" valign="middle"><div align="right" class="nomi_form">
    CATEGORIA </div></td>
    <td width="378" valign="middle"><select name="file_mac" class="campo_form">
    <?php
    $sel_all = "SELECT nome AS nomex, file AS filex FROM categoria ORDER BY id_categoria ASC";
    $query_sel_all = mysql_query($sel_all,$conn);
    while (($obj_sel_all=mysql_fetch_object($query_sel_all)))
    {
    $PHPSESSID=session_id();
    $nome_cat = strip_tags($obj_sel_all->nomex);
    ?>
    <option value="<?php echo strip_tags($obj_sel_all->filex) . '&PHPSESSID=' . $PHPSESSID; ?>"><?php echo strip_tags($obj_sel_all->nomex); ?></option>
    <?php
    // echo "<input name='nome_cat' type='hidden' id='nome_cat' value='$nome_cat'>";
    }
    ?>
    </select>
    <a href="in_categoria_da_macchina.php" target="_parent" class="link_form" onMouseOver="MM_displayStatusMsg('Aggiungi CATEGORIA');return document.MM_returnValue">Aggiungi</a> </td>
    </tr>
    <tr><td height="21" valign="top"><!--DWLayoutEmptyCell--> </td>
    <td valign="bottom"><input name="Button1" type="button" class="esempio_form" onClick="MM_jumpMenuGo('file_mac','parent',0)" value="Vai"></td>
    </tr>
    </table>
    </form>

    Scusa se mi sono prolungato, ma è dovere in quanto, anche non conoscendoti, mi sembri una persona disponibile e curiosa.
    Grazie di nuovo e a presto