Hola,
esto es el query que tengo en la vista:
<?php
mysql_connect("localhost","USERNAME","PASWORD");
mysql_select_db("privato");
$divisione = Yii::app()->user->id;
$query = "SELECT sessione_id, SUM(totale) FROM sessione WHERE operatore_id=$divisione";
$result = mysql_query($query) or die(mysql_error());
while($totale = mysql_fetch_array($result)){
echo $totale['SUM(totale)'];
}
?>"
Ahora ya se que un query en la vista no es bueno por seguridad y logica MVC…asy es unh html form en una vista MVC.
Pero lo he echo asi por que no llego hacerlo de otra manera.
Esto es el form html que he puesto en la vista:
<form id="Confermasessione" name="Confermasessione" action="Confermasessione">
<input size="3" class="totale" id="totale" readonly="readonly" name="totale" value="<?php mysql_connect("localhost","root","");
mysql_select_db("privato");
$divisione = Yii::app()->user->id;
$query = "SELECT sessione_id, SUM(totale) FROM sessione WHERE operatore_id=$divisione";
$result = mysql_query($query) or die(mysql_error());
while($totale = mysql_fetch_array($result)){
echo $totale['SUM(totale)'];
}
?>"> €
</td>
</tr>
<tr class="table_data_header">
<td class="table_data_l" colspan="3">Importo Ricevuto
</td>
<td class="table_data">
<input size="3" class="importoricevuto" id="importoricevuto" value="0.00" name="importoricevuto"/> €
</td>
<tr class="table_data_header">
<td class="table_data_l" colspan="3">Resto
</td>
<td class="table_data">
<input value="<?php echo $resto ;?>" id="resto" class="resto" size="3" readonly="readonly" name="resto"/> €
</td>
</tr>
<tr class="table_data_footer">
<td colspan=3 class="table_last_lr">
<center><?php echo CHtml::submitButton('Il Cliente ha Pagato', array('class'=>'btn btn-primary', 'submit' => array('ConfermaSessione'))); ?>
<?php echo CHtml::submitButton('Continua a Postalizzare', array('class'=>'btn btn-success', 'submit' => array('NuovaPostalizzazione'))); ?>
</center>
</form>
Esta claro tambièn que el segundo boton "Continua a Postalizzare" tanpoco puede funcionar por que el form ya tiene su action"…" y en tonces el boton tanpoco va a funcionar.
Ahora quiero poner el query en el Controlador o y en el model me da igual.
Pero tanpoco se come pner un textField en el form que me llame la action por del query.
Mas o menos como se hace por los dropDownList (menu) donde creamos nuestra accion en el controlador y la llamamos en el form con $model->MiAccion.
He ententado tambièn hacerlo asi pero no me sale. Estoy trabajando desde un Controlador diferente de la tabla session, que es la tabla donde ago el query. Alguien puede ayudarme porfavor??
Entoces lo que quiero es poner el query e un controlador, quitar el form html y trabajar con el CActiveForm y campos textField. Los dos mas abajo de "totale" ya se como hacerlos…pero en el campo "totale" necesito el query.
Les pego la vista completa.
<div class="table_box">
<table class="table" style="width: 90%; margin: auto;">
<tbody>
<tr>
<td colspan=3 class="table_info_header table_first_lr">Sessione Utente</td>
</tr>
<tr class="table_data_header">
<td class="table_data_l"><b>Mittente</b></td>
<td class="table_data"><b>Codice Sessione Cliente</b></td>
<td class="table_data_r"><b>N. Operazioni</b></td>
</tr>
<tr id="table_data_content">
<td style="border-left:3px solid #2da4dd;">
<?php
//$sessione = Cassa::model()->findByAttributes(array('cassa_id'=>array($model->cassa_id)));
//$sessioneutente=Sessione::model()->findAll('id = 1');
$sessione = Sessione::model()->findAllByAttributes(array('operatore_id'=>array(Yii::app()->user->id)));
foreach ($sessione as $sess){
echo $sess->mittente_nome. ' ' .$sess->mittente_cognome. ' <br> ' ;
}?>
</td>
<td class="table_data">
<?php echo $sess->sessione. '' ; ?>
</td>
<td style="border-right:3px solid #2da4dd;">
<?php
$sessione = Sessione::model()->findAllByAttributes(array('operatore_id'=>array(Yii::app()->user->id)));
$sum = 0;
foreach($sessione as $sess=>$sessione_id) {
$sum += $sessione_id;
}
echo "$sum ";
?>
</td>
</tr>
<tr class="table_data_footer">
<td colspan=3 class="table_last_lr">
</td>
</tr>
</tbody>
</table>
<br /><br />
<table class="table" style="width: 90%; margin: auto;">
<tbody>
<tr>
<td colspan="5" class="table_info_header table_first_lr">Riepilogo Operazioni</td>
</tr>
<tr class="table_data_header">
<td class="table_data_l"><b>Operazione</b></td>
<td class="table_data"><b>Imponibile</b></td>
<td class="table_data"><b>IVA</b></td>
<td class="table_data"><b>Totale</b></td>
</tr>
<tr>
<tr id="table_data_content">
<td style="border-left:3px solid #2da4dd;">
<?php
$sessione = Sessione::model()->findAllByAttributes(array('operatore_id'=>array(Yii::app()->user->id)));
foreach ($sessione as $sess){
echo '<a href="/sito/Missiva/vedimissiva/'.$sess->sessione_id.'">' .$sess->prodotto. '('.$sess->tracking. ') - verso - ' .$sess->cliente_cap.','.$sess->cliente_comune. ' ('.$sess->cliente_provincia.')'. '</a><br><br>' ;
}?>
</td>
<td class="table_data">
<?php
$sessione = Sessione::model()->findAllByAttributes(array('operatore_id'=>array(Yii::app()->user->id)));
foreach ($sessione as $sess){
echo $sess->prezzo.' €','<br><br> ' ;
}?>
</td>
<td class="table_data">
<?php
$sessione = Sessione::model()->findAllByAttributes(array('operatore_id'=>array(Yii::app()->user->id)));
foreach ($sessione as $sess){
echo $sess->iva.'<br><br> ' ;
}?>
</td>
<td class="table_data">
<?php
$sessione = Sessione::model()->findAllByAttributes(array('operatore_id'=>array(Yii::app()->user->id)));
foreach ($sessione as $sess){
echo $sess->totale.' €','<br><br> ' ;
}?>
</td>
</tr>
<tr class="table_data_header">
<td class="table_data_l" colspan="3">Importo Totale
</td>
<td class="table_data">
<form id="Confermasessione" name="Confermasessione" action="Confermasessione">
<input size="3" class="totale" id="totale" readonly="readonly" name="totale"
value="<?php
mysql_connect("localhost","root","");
mysql_select_db("privato");
$divisione = Yii::app()->user->id;
$query = "SELECT sessione_id, SUM(totale) FROM sessione WHERE operatore_id=$divisione";
$result = mysql_query($query) or die(mysql_error());
// Print out result
while($totale = mysql_fetch_array($result)){
echo $totale['SUM(totale)'];
}
?>"> €
</td>
</tr>
<tr class="table_data_header">
<td class="table_data_l" colspan="3">Importo Ricevuto
</td>
<td class="table_data">
<input size="3" class="importoricevuto" id="importoricevuto" value="0.00" name="importoricevuto"/> €
</td>
<tr class="table_data_header">
<td class="table_data_l" colspan="3">Resto
</td>
<td class="table_data">
<input value="<?php echo $resto ;?>" id="resto" class="resto" size="3" readonly="readonly" name="resto"/> €
</td>
</tr>
<tr class="table_data_footer">
<td colspan=3 class="table_last_lr">
<center><?php echo CHtml::submitButton('Il Cliente ha Pagato', array('class'=>'btn btn-primary', 'submit' => array('ConfermaSessione'))); ?>
<?php echo CHtml::submitButton('Continua a Postalizzare', array('class'=>'btn btn-success', 'submit' => array('NuovaPostalizzazione'))); ?>
</center>
</form>
</td>
</tr>
</tbody>
</table>
</div>
<script language="javascript">
<!--
function ContinuaPostalizzazione() {
document.location.href= "http://localhost/nuovapostalizzazione"
}
//-->
</script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js "></script>
<script type="text/javascript">
// we used jQuery 'keyup' to trigger the computation as the user type
$('.importoricevuto').keyup(function () {
// initialize the sum (total price) to zero
var sum = parseFloat($(this).val());
// we use jQuery each() to loop through all the textbox with 'price' class
// and compute the sum for each loop
$('.totale').each(function() {
sum -= parseFloat($(this).val());
});
// set the computed value to 'totalPrice' textbox
$('#resto').val( sum.toFixed(2));
});
</script>
Un Saludo