combo, parametri e metodi...

La discussione sul CMS Made Simple in italiano.

Moderator: magallo

Post Reply
klio
Forum Members
Forum Members
Posts: 25
Joined: Wed Aug 15, 2007 7:20 pm

combo, parametri e metodi...

Post by klio »

Ciao a tutti

ho una pagina con una combo all'interno di un form che ha come action index.php?page=pagina_attuale e method=post;
quando seleziono una voce della combo, un javascript fa una submit().
Fin qui tutto ok.
Il problema è che poi non so come ricavare i dati che vengono passati tramite il metodo POST.
Qualche suggerimento?  :)
Grazie.


Klio


se serve posso postare il codice
alby

Re: combo, parametri e metodi...

Post by alby »

klio wrote:
ho una pagina con una combo all'interno di un form che ha come action index.php?page=pagina_attuale e method=post;
quando seleziono una voce della combo, un javascript fa una submit().
Fin qui tutto ok.
Il problema è che poi non so come ricavare i dati che vengono passati tramite il metodo POST.
Qualche suggerimento?  :)
$_POST['nome_del_campo'] per il php
$smarty.post.nome_del_campo se ti serve il valore per smarty

Alby
klio
Forum Members
Forum Members
Posts: 25
Joined: Wed Aug 15, 2007 7:20 pm

Re: combo, parametri e metodi...

Post by klio »

grazie,
però questo già lo sapevo.
il problema è che, passando dalla index.php, $_POST si "svuota" quindi non posso più accedere ai dati passati dal form.

come si fa a mantenere il contenuto di $_POST?

grazie per la pazienza  :)

Klio
alby

Re: combo, parametri e metodi...

Post by alby »

klio wrote: il problema è che, passando dalla index.php, $_POST si "svuota" quindi non posso più accedere ai dati passati dal form.

come si fa a mantenere il contenuto di $_POST?
Si svuota se all'interno c'è qualcosa modulo/plugin che fa un redirect/reload (attiva il debug, in genere se fa un redirect fa il doppio passaggio). Poi a seconda della presenza o meno di alcuni moduli/plugins:
- controlla poi se sono sovrascritti da qualche modulo/plugin
- vengono inseriti in $_REQUEST
- vengono trasformati in $params

- passi al GET (action="get")

Alby
klio
Forum Members
Forum Members
Posts: 25
Joined: Wed Aug 15, 2007 7:20 pm

Re: combo, parametri e metodi...

Post by klio »

scusa la domanda banale, ma action e' puntato al path giusto?



klio
alby

Re: combo, parametri e metodi...

Post by alby »

klio wrote: scusa la domanda banale, ma action e' puntato al path giusto?


Se piani-di-studio-php è l'alias della pagina a cui vuoi mandare il form sì, se è un file php no.
Perchè non provi FormBuilder?

Alby
klio
Forum Members
Forum Members
Posts: 25
Joined: Wed Aug 15, 2007 7:20 pm

Re: combo, parametri e metodi...

Post by klio »

scusate la lunghezza del post, questo e' il codice con cui mi sto impazzendo.... alby gentilmente ha fatto qualche modifica. Il javascript non da errori ... ma $Post si svuota.
Dove sbaglio? c'e' una maniera piu semplice per fare questa cosa?

grazie per l'infinita pazienza

Klio

{literal}

function ricarica()
{document.forms["form_scelta"].submit()}{/literal}


Piani di Studio
Piano di Studio:
{php}
global $gCms;
$db =& $gCms->GetDb();

if (isset($_POST["id"])) $id_scelto=$_POST["id"];
else $id_scelto=0;

$query = 'SELECT id_ltpiano, piano FROM ltpiani ORDER BY piano';
$dbresult = $db->Execute( $query );
if( !$dbresult )
{
echo 'DB error: '. $db->ErrorMsg()."";
return;
}
echo '';
echo 'Seleziona un piano';
while ($dbresult && $piani = $dbresult->FetchRow())
{
if ($piani["id_ltpiano"]==$id_scelto) {
echo ''.$piani["piano"].'';
}
else {
echo ''.$piani["piano"].'';
}
}
echo '';

if (count ($_POST)>0)
{
$result = @mysql_query('SELECT  id_ltpiano, piano, corpo, modulo FROM ltpiani WHERE id_ltpiano = '.$_POST["id"]);
$riga = mysql_fetch_array ($result);
echo ''."scarica
CURRICULUM:".$riga["piano"]."

    PIANO DI STUDI

Da presentare entro il 30 settembre

CURRICULUM: '.$riga["piano"].'
'.$riga["corpo"].'
';}
{/php}
klio
Forum Members
Forum Members
Posts: 25
Joined: Wed Aug 15, 2007 7:20 pm

Re: combo, parametri e metodi...

Post by klio »

scusate postilla ... non e' fatto come un udt al momento perche voglio tutto il codice sotto mano... ma non ho problemi a smembrarlo.

continua allegramente a non funzionare anche sotto forma di UDT.

seconda postilla, posso postare anche sul forum in inglese? non ho problemi di lingua, ma non so se e' permesso il doppio post.

klio
alby

Re: combo, parametri e metodi...

Post by alby »

klio wrote: scusate la lunghezza del post, questo e' il codice con cui mi sto impazzendo.... alby gentilmente ha fatto qualche modifica. Il javascript non da errori ...

UDT: myform

Code: Select all

global $gCms;
$db =& $gCms->GetDb();

if(isset($_POST['piano_id'])) $id_scelto=$_POST['piano_id'];
else $id_scelto=0;

$query = 'SELECT id_ltpiano, piano FROM ltpiani ORDER BY piano';
$dbresult = $db->Execute( $query );
if( !$dbresult )
{
	echo 'DB error: '. $db->ErrorMsg()."<br/>";
	return;
}


echo '<select name="piano_id" size="1" onchange="ricarica()">';
if(empty($id_scelto))
	echo '<option selected="selected" value="">Seleziona un piano</option>';

while($dbresult && $piani = $dbresult->FetchRow())
{
	if ($piani['id_ltpiano']==$id_scelto) 
	{
		echo '<option value ="'.$piani['id_ltpiano'].'" selected="selected">'.$piani['piano'].'</option>';
	}
	else
	{
		echo '<option value="'.$piani['id_ltpiano'].'">'.$piani['piano'].'</option>';
	}
}
echo '</select>';

if(! empty($id_scelto))
{
	$query = 'SELECT id_ltpiano, piano, corpo, modulo FROM ltpiani WHERE id_ltpiano = ?';
	$dbresult = $db->Execute( $query, array($id_scelto) );
	if($dbresult && $row = $dbresult->FetchRow())
	{
		echo '<span id="azioni"><a href="doc/'.$row['modulo'].'.pdf"><img src="img/download.gif" alt=""/>scarica</a></span>';
		echo '<p><strong>CURRICULUM: '.$row['piano'].'<br />';
		echo 'PIANO DI STUDI<br />Da presentare entro il 30 settembre';
		echo '</strong></p>';
		echo '<table summary="CURRICULUM: '.$row['piano'].'">';
		echo '<caption>CURRICULUM: '.$row['piano'].'</caption>';
		echo '<tr>'.$row['corpo'].'</tr>';
		echo '</table>';
	}
}
Template:

Code: Select all

{literal}
<__script__ type="text/javascript">
function ricarica(){
	document.forms["form_scelta"].submit();
}
</__script>
{/literal}
<form action="index.php?page={$page_alias}" method="post" name="form_scelta">
	<input type="hidden" name="returnid" value="{$page_id}">
	<label for="piano_id">Piano</label>
	{myform}
</form>
NO id come nome campo

Alby
Last edited by alby on Tue Oct 02, 2007 3:27 pm, edited 1 time in total.
klio
Forum Members
Forum Members
Posts: 25
Joined: Wed Aug 15, 2007 7:20 pm

Re: combo, parametri e metodi...

Post by klio »

:) :) :)  funziona !!!  :) :) :)

klio
alby

Re: combo, parametri e metodi...

Post by alby »

klio wrote: :) :) :)  funziona !!!  :) :) :)
;D

Alby
Post Reply

Return to “Italian - Italiano”