Ver Mensaje Individual
  #3 (permalink)  
Antiguo 07/10/2008, 07:47
Avatar de ratmayor
ratmayor
 
Fecha de Ingreso: noviembre-2005
Ubicación: Puerto La Cruz
Mensajes: 23
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Problema con manejador de Base de Datos

Antes que nada, no sabia como usar las tags PHP! y muchas gracias por el consejo, y si, aunque las funciones hacen exactamente lo mismo, generan contenidos diferentes, poniendo el ejemplo de que en la tabla hay 3 campos "nombre, edad, peso" la primera funcion genera solo el nombre del campo de la tabla y devuelve "nombre, edad, peso"

Código PHP:
function fieldarg($table ''){
$result mysql_query("SELECT * FROM $table");
$fields = @mysql_num_fields($result);
for(
$i=1$i $fields$i++){
$field[] = mysql_field_name($result$i);
}
return 
$field;

la segunda genera variables con el nombre del campo. Esta funcion retornaria algo como "$_POST[nombre], $_POST[edad], $_POST[peso].

Código PHP:
function valuesarg($table ''){
       
$result mysql_query("SELECT * FROM $table");
       
$fields = @mysql_num_fields($result);
       for(
$i=1$i $fields$i++){
              
/* Aqui genero variables $_POST[] */              
              
$field[] = $_POST[mysql_field_name($result$i)];
       }
       return 
$field;

Esto prepara la consulta sin tener que hace un codigo en especifico para cada tabla

Código PHP:
//Aqui eliminamos la ultima "," de la cadena
$fields implode (',',valuesarg($table));
$values implode (',',fieldarg($table));


/* eh aqui la consulta. dentro de esta se cargan los valores cargados 
desde las funciones, de manera tradicional seria algo como: 
$sql = "insert into $table (nombre, edad, peso) values ($_POST[nombre],$_POST[edad],$_POST[peso])"; */

$sql "insert into $table ($fields) values ($values)";
mysql_query($sql,$link); 
Entonces el problema esta en que si, las variables se generan al momento en la funcion 2, como haria para tratar a una variable de manera independiente, si como explique anteriormente, la la funcion 2 general ago como esto: $_POST[nombre], $_POST[edad], $_POST[peso], como haria si deseo hacer esto:

Código PHP:
htmlentities($_POST[nombre]), $_POST[edad], $_POST[peso]
/* o algo asi: */
$_POST[nombre], crypt($_POST[edad],a), $_POST[peso
Cambiar el contenido de una sola variable es mi gran problema...

Última edición por ratmayor; 07/10/2008 a las 08:10