2015-05-13 2 views
-1

У меня есть список продуктов в таблице, извлеченной из моей БД. Каждый продукт имеет поле с ALIQUOTA (= НДС, налог). Я хочу иметь возможность изменить значение аликвоты, присвоенное отдельным продуктам.Передайте значение моей функции в php

Я сделал меню перехода рядом с фактическим аликвотом, которое содержит все допустимое значение из аликвоты таблица моей базы данных. (эти значения составляют 0,00, 4,00, 10,00, 20,00). После выбора это значение будет вставлено в текстовое поле ввода только для чтения с идентификатором «aliquota_XXX» (где XXX - это идентификатор, соответствующий продукту). Затем я хочу сохранить это значение, нажав кнопку ПОДТВЕРДИТЬ НДС, которые активируют функцию save_modify (эта функция уже существует в проекте). Это код:

<select class="piccolo elemento_modulo_obbligatorio" id="aliquota_dropdown_<?php echo $row['rid']; ?>" name="aliquota_dropdown"> 
<?php 
$aliquote = "SELECT aliquota,id AS aid FROM aliquote ORDER BY aliquota ASC"; 
$result_aliquote = mysql_query($aliquote) or die("Invalid query: " . mysql_error()); 
while ($row_aliquote = mysql_fetch_array($result_aliquote)) { 
echo '<option onclick=\''; 
?> 

$("#aliquota<?php echo $row['rid']; ?>").val("<?php echo $row_aliquote['aliquota']; ?>"); 

<?php 
echo ';\' value="' . $row_aliquote['aid'] . '">' . $row_aliquote['aliquota'] . '</option>'; 
} 
?> 

</select> 

<input autocomplete="off" type="text" class="class12" id="aliquota<?php echo $row['rid']; ?>" name="aliquota" readonly="readonly" value="" /> 
<input type="button" onclick="save_modify(&quot;aliquota&quot;,document.getElementById('aliquota_<?php echo $row['rid']; ?>').value,<?php echo number_format($row['aliquota'],2,".",","); ?>);" value="CONFIRM VAT" /> 

Функция save_modify является то, что:

function save_modify(cosa, valore_nuovo, valore_vecchio) { 
    $.ajax({ 
     type: "GET", 
     url: "ajax_salva_modifica_valore.php", 
     data: "id_documento=" + <? php echo $_GET['id_documento']; ?> +"&cosa=" + cosa + "&id=" + id + "&valore_nuovo=" + valore_nuovo + "&valore_vecchio=" + valore_vecchio, 
     cache: false, 
     success: function(data) { 
      $("#sezione_messaggi").html("Succesfully modified!"); 
     }, 
     beforeSend: function() { 
      $("#sezione_loading").html("<img src='../images/ajax-loader.gif' />"); 
     }, 
     complete: function() { 
      $("#sezione_loading").html(""); 
      post_modifica(id); 
      carica_righe(); 
     } 
    }); 
} 

И часть ajax_salva_modifica_valore.php, что интерес, который:

<?php 
session_start(); 
$cosa = $_GET['cosa']; 
$array_id = split("_",$id); 
$id_riga = $array_id[1]; 


$valore_nuovo = $_GET['valore_nuovo']; 
$valore_vecchio = $_GET['valore_vecchio']; 

if($cosa == "aliquota") { 
    $modifica = "UPDATE righe_documenti 
       SET aliquota = '" . $valore_nuovo . "' 
       WHERE id = " . $id_riga; 
    $result = mysql_query($modifica) or die("Invalid query: " . mysql_error()); 
} 
?> 

I не знаю, где проблема, потому что параметр, переданный функции, является коррекцией t, но модификация не применяется ...

Кто-то может помочь мне исправить или попробовать другое решение?

save_modify и ajax_salva_modifica_valore.php не сделан мной, поэтому я полагаю, что они являются правильными (и они работают для редактирования других информационных продуктов ...)

Спасибо!

ответ

0

Основная проблема заключается в том, что форматы number_format() являются строкой и должны быть заключены в двойные кавычки (&quot;) в вашем случае.

<input type="button" onclick="save_modify(&quot;aliquota&quot;,this.id,$(&quot;#aliquota<?php echo $row['rid']; ?>&quot;).val(),&quot;<?php echo number_format($row['aliquota'],2,",","."); ?>&quot;);" value="CONFIRM ALIQUOTA" /> 

Однако, глядя на остальной части кода, кажется, вам не нужно number_format() вообще:

<input type="button" onclick="save_modify(&quot;aliquota&quot;,this.id,$(&quot;#aliquota<?php echo $row['rid']; ?>&quot;).val(),<?php echo $row['aliquota']; ?>);" value="CONFIRM ALIQUOTA" /> 
+0

Спасибо за ответ, но нет, это не значит, что проблема. Я сделал некоторые испытания и параметр save_modify, что есть проблема является третьим: $ (" #aliquota ") .val() я заменил его: document.getElementById ('aliquota _ '). Value И вот параметр передан ... Но функция еще не выполняет свою работу ... – Pittogatto

Смежные вопросы