Bueno, deseo recuperar valores de un campo en MySQL
para que pasen por una función.
Está función:
Código PHP:
Ver original<?php
function magia ($valores, $cambia, $vcambia) {
echo " => ";
$vresto= 100 - $valores[$cambia];
$nresto= 100 - $vcambia;
$contribuciones= array();
foreach ($valores as $key=>$val) if ($key != $cambia) $contribuciones[$key]= $val / $vresto;
foreach ($valores as $key=>$val) if ($key != $cambia) $valores[$key]= $nresto * $contribuciones[$key];
$valores[$cambia]= $vcambia;
echo '<br>';
$total= 0;
foreach($valores as $val) $total+= $val;
echo " suma : $total\n";
echo '<br>';
}
$valores= array(0=>50, 1=>20, 3=>30);
magia($valores,0,0);
magia($valores,0,10);
magia($valores,0,20);
magia($valores,0,30);
magia($valores,0,40);
magia($valores,0,50);
magia($valores,0,60);
magia($valores,0,70);
magia($valores,0,80);
magia($valores,0,90);
magia($valores,0,100);
?>
Deseo que los valores de
los recupere de un campo que tengo en mi base de datos
Gracias por responderme :D
Bueno mejor dejo mi codigo PHP.
Código PHP:
Ver original<?php
require_once '../../../config/mysql.php';
$dbCon = Conectarse();
// Capturamos los valores con $_GET[]
$productor = $_GET['productor']; //Ej. : Agricola Saenz
$especie = $_GET['especie']; //Ej. : Ciruela
$variedad = $_GET['variedad']; //Ej. : Angeleno
$etapa = $_GET['etapa']; //Ej. : 2
$calibre = $_GET['calibre']; //Ej. : 36
$porcentualReal = $_GET['porcentualReal']; //El Porcentaje de este calibre 36 es 1.9, esta variable guarda : 1.12
$porcentual = $_GET['campoPorcentual']; //Lo que el usuario a ingresado en la casilla porcentual, Ej: 70.
// Actualizamos el valor porcentual con el valor que el usuario a ingresado.
mysql_query("UPDATE criterio_calibres SET valor_porcentual = $porcentual WHERE `criterio_calibres`.`id_especie` = '$especie' AND `criterio_calibres`.`id_productor` = '$productor' AND `criterio_calibres`.`id_variedad` = '$variedad' AND `criterio_calibres`.`etapa` = $etapa AND `criterio_calibres`.`id_calibre` = $calibre LIMIT 1", $dbCon)or
die(mysql_error());
// Sumamos la cantidad de valores porcentuales en total.
$queryCriterioCalibre = mysql_query("SELECT SUM(valor_porcentual) as suma FROM criterio_calibres WHERE id_productor = '$productor' AND id_especie = '$especie' AND id_variedad = '$variedad' AND etapa = $etapa", $dbCon); $Suma = round($resultadoPorcentual['suma'],0); //Ej: $Suma = 162
$antiguo_valor= $porcentualReal;
$nuevo_valor= $porcentualReal;
$Cero = 0 ;
$result= mysql_query("select `id_especie`,`id_productor`,`id_variedad`,`etapa`,`id_calibre`, `valor_porcentual` FROM criterio_calibres WHERE CONVERT(`criterio_calibres`.`id_especie` USING utf8) = '$especie' AND CONVERT(`criterio_calibres`.`id_productor` USING utf8) = '$productor' AND CONVERT(`criterio_calibres`.`id_variedad` USING utf8) = '$variedad' AND `criterio_calibres`.`etapa` = $etapa AND `criterio_calibres`.`id_calibre` != $calibre AND `criterio_calibres`.`valor_porcentual` != $porcentual AND `criterio_calibres`.`valor_porcentual` > $Cero", $dbCon)or
die(mysql_error());
$valores[implode("|",Array($obj->id_especie,$obj->id_productos, $obj->id_variedad, $obj->etapa, $obj->id_calibre))]= $obj->valor_procentual; }
foreach($valores as $key=>$val){
if($val == $antiguo_valor){
$vkey= $key;
}
}
function magia (&$valores, $cambia, $vcambia) {
echo " => ";
$vresto= 100 - $valores[$cambia];
$nresto= 100 - $vcambia;
$contribuciones= array();
foreach ($valores as $key=>$val) if ($key != $cambia) $contribuciones[$key]= $val / $vresto;
foreach ($valores as $key=>$val) if ($key != $cambia) $valores[$key]= $nresto * $contribuciones[$key];
$valores[$cambia]= $vcambia;
$total= 0;
foreach($valores as $val) $total+= $val;
echo " suma : $total\n";
}
magia($valores, $vkey, $nuevo_valor); // <= tienes que cambiar la definicion de magia a : >>> function magia (&$valores, $cambia, $vcambia) <<< Para que se modifique el array
foreach ($valores as $key=>$val) {
mysql_query("update `criterio_calibres` set `valor_porcentual` = $val where `id_especie` = {$keys[0]} AND `id_productor` = {$keys[1]} AND `id_variedad` = {$keys[2]} AND `etapa` = {$keys[3]} AND `id_calibre` = {$keys[4]} limit 1");
}
/* ++++++++++++++++++++ Fin +++++++++++++++++++++++*/
Gracias :D
Ya lo he solucionado :D