Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/10/2008, 17:48
Avatar de korg1988
korg1988
 
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 9 meses
Puntos: 19
Respuesta: Problema con manejador de Base de Datos

a ver si organizamos un poquito el codigo la proxima vez, y posteamos usando los TAGS para PHP asi nos pone colores, en que epoca estamos? en el siglo pasado ?! BLANCO Y NEGRO!, como quieren que uno entienda lo que hacen si ponen todo en una linea, no tiene tabulaciones y ensima parece una pelicula de chaplin!

[php]
<?php

require "conex.php";

$table = "datos";
$field = array();

/* Esta funcion genera las variables de entrada dependiendo de los nombres de los campos de la BD, por ejm: $_POST[nombre], $_POST[edad], $_POST[peso] */
function valuesarg($table = ''){
$result = mysql_query("SELECT * FROM $table");
$fields = @mysql_num_fields($result);
for($i=1; $i < $fields; $i++){
$field[] .= $_POST[mysql_field_name($result, $i)];
}
return $field;
}

/* Esta funcion carga los campos de la tabla seleccionada por ejm: nombre, edad, peso... */
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;
}
//Aqui eliminamos la ultima "," de la cadena
$fields = implode (',',valuesarg($table));
$values = implode (',',fieldarg($table));

//eh aqui la consulta...
$sql = "insert into $table ($fields) values ($values)";

mysql_query($sql,$link);

?>
[php]

Los puntos en el signo "=" estan de mas ya que el ".=" sirve para concatenar un valor al valor ya contenido en la variable, pero en este caso se asigna una posicion nueva cada vez que se agrega un valor en el array o sea que el ".=" esta de mas
Ponelo asi
Código PHP:
$field[] = mysql_field_name($result$i); 
Despues, estoy notando que las dos funciones realizan exactamente lo mismo, cual es el sentido? no entiendo tu codigo, no le encuentro sentido, si podes ser mas explicito se agradeceria

Saludos!