Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   MySQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=21)
-   -   Como pasar el valor de un campo a una variable en Mysql y php? (https://www.clubdelphi.com/foros/showthread.php?t=65162)

maravert 25-11-2009 01:44:13

Como pasar el valor de un campo a una variable en Mysql y php?
 
Que tal a todos,

Tengo este problema que no le hayo ni por donde.Hay una tabla que tiene los siguientes campos

Tabla Alumnos

id_alumno (int)
colegiatura (float)
Porcentajebeca (float)

.....

En otra tabla debo de craer registros a partir de los campos anteriores

La tabla que se llama Colegiaturas tiene los siguientes campos

ID
id_alumno (qu es de la tabla alumnos)
importe (que sale de multiplicar los campos colegiatura y porcentajebeca de la tabla alumnos)
descripcion (texto fijo)
Fecha
.....


Asi es que lo que se me ocurrio fue leer todos los registros de la tabla alumnos y de alli obtener los valores que se Insertaran en la tabla Colegiaturas, por lo que hice una consulta y solo he podido leer registro por registro, pero no puiedo obtener el valor de cada campo.

La consulta es la siguiente


Código SQL [-]
 
$colegiatura = "Col.Diciembre 2009 ";
$db = mysql_connect("localhost", "root", "pass");
mysql_select_db("sistema",$db);
$result = mysql_query("SELECT * FROM alumnos",$db);
if ($result === false) die("failed"); 

while ($fields = mysql_fetch_row($result)) {
 for ($i=0, $max=sizeof($fields); $i < $max; $i++) {
print $fields[$i].' ';  // Aqui me sale el registro completo

Asi es que si alguien me puede iluminar salvaran mi trabajo.

Gracias

Maravert

roman 25-11-2009 08:39:32

No entiendo para qué quieres el ciclo for. Según tu descripción, los campos que te interesan son el 1 y el 2, así que bastaría que tomes directamente su valor: $fields[1] y $fields[2] en cada vuelta del ciclo externo, para calcular el importe.

Por otra parte, no soy partidario de acceder a los campos por índice, ya que si en un momento debes insertar columnas en tu tabla, el índice puede cambiar, y con ello todas las consultas que los usaron.

Puedes usar mysql_fetch_assoc para acceder a los campos por nombre:

Código PHP:

<?php
while ($fields mysql_fetch_assoc($result))
{
  
$colegiatura $fields['colegiatura'];
  
$porcentaje $fields['Porcentajebeca'];

  
$importe $colegiatura*($porcentaje/100);
}
?>

// Saludos

maravert 25-11-2009 19:03:04

Muchas Gracias Roman por tu respuesta, voy a checar lo q me has dado

Saludos

Maravert

maravert 25-11-2009 23:41:49

Resulto ok.


La franja horaria es GMT +2. Ahora son las 09:09:37.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi