ciao, scusate per l'ignoranza ma sono alle prime armi. E' possibile creare più form in una vista? e farli gestite da più action? Devo per forza creare un model assegnato ad ogni form? grazie
Page 1 of 1
Passaggio Da Views Ad Action Multiplo
#2
Posted 24 September 2013 - 05:26 AM
Il Form è un'entità a sè. Guarda, per esempio FormLogin: lo puoi utilizzare in qualsiasi vista. Però in quella vista devi rendere i campi che ti interessano. L'argomento è ampio: puoi fare in modo con un unico form si comporti in modi differenti in differenti scenari.
#3
Posted 24 September 2013 - 12:31 PM
Per facilitare le cose vi descrivo meglio quello che intendo fare e come intendo raggiungere l'obiettivo.
Sto cercando di realizzare un 'piccolo' sito e-commerce dove l'utente oltre a visualizzare i prodotti può aggiungerli al carrello.
Per realizzare ciò pensavo di creare un form con un campo nascosto (id_prodotto) che esegue una semplice query.
(view)
(controller)
Quando tento di collegarmi al controller però mi esce il messaggio Forbidden (Accesso negato).
Cosa posso fare per risolvere il problema?
grazie
Sto cercando di realizzare un 'piccolo' sito e-commerce dove l'utente oltre a visualizzare i prodotti può aggiungerli al carrello.
Per realizzare ciò pensavo di creare un form con un campo nascosto (id_prodotto) che esegue una semplice query.
(view)
<?php echo CHtml::beginForm('protected/modules/shop/controllers/ProdottiController/Aggiungi','get'); ?> <?php echo CHtml::submitButton('Acquista', array('id' => 'acquista')); ?> <?php echo '<input type="hidden" value="'.$data->getAttribute('id_prodotto').'"/>'; ?> <?php echo CHtml::endForm(); ?>
(controller)
public function actionAggiungi() { $value = $_GET['id']; if($value == "acquista"){ $id_prodotto=$data->getAttribute('id_prodotto'); $id_user=Yii::app()->user->userId; $sql=" INSERT INTO carrello VALUES (0,$id_user,$id_prodotto) "; $connection=Yii::app()->db; $command=$connection->createCommand($sql); $rowCount=$command->execute();*/ echo $sql; } }
Quando tento di collegarmi al controller però mi esce il messaggio Forbidden (Accesso negato).
Cosa posso fare per risolvere il problema?
grazie
This post has been edited by sensorario: 26 September 2013 - 03:08 AM
Reason for edit: Il codice non era racchiuso nell'apposito markup
#4
Posted 26 September 2013 - 03:10 AM
Devi abilitare l'accesso a quella particolare action dal controller. Se ci fai caso, in alto sono indicati i permessi di abilitazione per ciascuna vista. Possono andare in base all'utente o al suo ruolo.
#6
Posted 29 September 2013 - 01:06 AM
Una volta che risolvi, sarebbe bene che pubblichi anche la soluzione per aiutare chi dovesse avere il tuo stesso problema.
Share this topic:
Page 1 of 1