Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Guardar informacion

Estas en el tema de Guardar informacion en el foro de PHP en Foros del Web. Hola amigos estoy realizando una función, pero no me almacena la información de la base de datos y lo tengo echo de la siguiente manera: ...
  #1 (permalink)  
Antiguo 26/06/2016, 12:17
 
Fecha de Ingreso: julio-2015
Ubicación: Colombia Bogota
Mensajes: 72
Antigüedad: 8 años, 9 meses
Puntos: 0
Guardar informacion

Hola amigos estoy realizando una función, pero no me almacena la información de la base de datos y lo tengo echo de la siguiente manera:
Código PHP:
include('conexion.inc.php');
$link=conectar();



function 
insertar($campo1,$campo2,$campo3,$campo4,$campo5,$campo6,$campo7,$campo8
{


$sql="
INSERT INTO array
VALUES('Null',$campo1','$campo2','$campo3','$campo4','$campo5','$campo6','$campo7','$campo8')
"
;
$result=mysql_query($sql,$link) or die
(
"ERROR $sql");

        
    return array (
$campo1,$campo2,$campo3,$campo4,$campo5,$campo6,$campo7,$campo8);

el error que me pararece es este:

Código PHP:
Warningmysql_query(): supplied argument is not a valid MySQL-Link resource in C:wampwwwleer archivo planos2insertar.php on line 15
ERROR INSERT INTO 
array VALUES('Null',01','07/10/15','','','','','','
me prodian decir que es lo que estoy haciendo mal? o por que lado me puedo guiar.
Gracias
  #2 (permalink)  
Antiguo 26/06/2016, 13:45
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Guardar informacion

Hola kazukyx5,

Varias cosas, para empezar, la librería que usas (mysql_) es obsoleta

Por otra parte, para saber más concretamente qué error tienes, deberías depurar con mysql_error() si es que vas a seguir usando la librería obsoleta, algo así:

Código PHP:
Ver original
  1. $result=mysql_query($sql,$link) or die
  2. ("ERROR: " . mysql_error() . " en esta consulta: $sql");
  #3 (permalink)  
Antiguo 26/06/2016, 15:41
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Guardar informacion

Tienes un mal uso de apostrofos.

NULL no es una cadena de texto, sino un estado propio de datos en SQL, por lo que NO debe ir entre apóstrofos.
Luego, el segundo valor que pones está con el apostrofo de cierre, pero no el de inicio, con lo que la estructura completa de la query queda destruida.

Recuerda que para que una consulta funcione, no alcanza con que parezca estar bien escrita, tiene que estarlo en forma PERFECTA PARA MYSQL.

Código PHP:
Ver original
  1. $sql="INSERT INTO array
  2. VALUES(NULL, '$campo1', '$campo2', '$campo3', '$campo4', '$campo5', '$campo6', '$campo7', '$campo8')";


Posdata:
1) Los datos de tipo fecha deben ir en campos DATE, DATETIME o TIMESTAMP. La fecha de un ISERTT INTO tiene un formato incorrecto, lo que me hace suponer que estás usando tun campo VARCHAR, lo que es un ERROR de tipo catastrófico.
2) Es preferible que lso valores numéricos para campos numéricos se pongan SIN apostrofos. Tratar los numeros como cadenas de texto ESCODE ERRORES, ya que se genera una conversión implícita que en realidad no permite ver que lo que NO está llegando es el DATO desde el formulario. Los espacios vacíos se mapean a cero en esas conversiones... que no es lo mismo que un dato que está faltando.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 27/06/2016, 07:10
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: Guardar informacion

Una cosa más la variable $link no existe dentro de la función que creas ni tampoco es proporcionada como argumento o declarada como global, por lo que dentro de la función no existe.

Véase ámbito de las variables
__________________
Unset($vida['malRollo']);
  #5 (permalink)  
Antiguo 27/06/2016, 08:09
 
Fecha de Ingreso: julio-2015
Ubicación: Colombia Bogota
Mensajes: 72
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Guardar informacion

Gracias Muchachos, al parecer si estaba obsoleto pero lo realice de esta manera:
Código PHP:
Ver original
  1. include('conexion.inc.php');
  2. $link=conectar();
  3.  
  4.  
  5.  
  6. function insertar($campo1,$campo2,$campo3,$campo4,$campo5,$campo6,$campo7,$campo8)  
  7. {
  8.  
  9.  
  10. $sql="INSERT INTO array (campo1,campo2,campo3,campo4,campo5,campo6,campo7,campo8)
  11.      VALUES ('$campo1','$campo2','$campo3','$campo4','$campo5','$campo6','$campo7','$campo8')";
  12.  
  13.    mysql_query($sql);
  14.          
  15.     return array ($campo1,$campo2,$campo3,$campo4,$campo5,$campo6,$campo7,$campo8);
  16. }

Etiquetas: informacion, mysql, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:24.