PHP - Parse error: syntax error, unexpected 'SUM' (T_STRING)

 
Vista:

Parse error: syntax error, unexpected 'SUM' (T_STRING)

Publicado por Luquint (14 intervenciones) el 29/04/2016 00:05:07
que pena molestar: pero realizo el siguiente escrip en php el cual lo recibe de un formulario con los tres primeros campos, y revisados con la tabla en la bd al enviar los datos genera el error final
Este procedimiento ya lo habia realizado dandome el mismo error
1
2
3
4
5
6
7
8
9
10
11
<?php
// Carga datos de ingresos
include 'conexion.php';
$codigo = $_POST['codigo_ing'];
$dedonde = $_POST['procedencia'];
$cuanto = $_POST['valor'];
  SELECT SUM(valor) as totalingresos FROM ingresos;
  $totalingresos = $totalingresos + $valor;
mysql_query("INSERT INTO ingresos(codigo_ing , procedencia, valor, totalingresos)
    VALUES ($codigo, '$dedonde', $cuanto, $totalingresos)") or die ("Problemas en el INSERT  ".mysql_error());
?>

me genera el siguiente error
1
2
SCREAM: Error suppression ignored for
Parse error: syntax error, unexpected 'SUM' (T_STRING) in C:\wamp\www\Cuentas\cargaingresos.php on line 7

Gracias a quien me pueda sacar de este lio.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Parse error: syntax error, unexpected 'SUM' (T_STRING)

Publicado por xve (6935 intervenciones) el 29/04/2016 08:21:42
Hola Luquint, pero en la linea 7, tienes la consulta SQL, pero sin comillas, y sin asignarla a ninguna variable ni nada... es un texto, que no esta correctamente colocado... es como si escribieras cualquier trozo de texto entre el código PHP... PHP no lo sabe interpretar.

No se si me he explicado bien...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de VRM
Val: 152
Ha disminuido su posición en 6 puestos en PHP (en relación al último mes)
Gráfica de PHP

Parse error: syntax error, unexpected 'SUM' (T_STRING)

Publicado por VRM (192 intervenciones) el 29/04/2016 08:31:00
Hola:

El proceso para consultar la base de datos puede hacerse de varias maneras. Te pongo una:

1) Conexión a la base de datos:

1
2
$link = mysqli_connect(mombre del host, usuario,contraseña);
mysqli_select_db($link, nombre de la base de datos);

La primera linea obtiene un manejador de la conexión ($link), la segunda selecciona la base de datos.

2) Consulta

1
$result = mysqli_query($link, "SELECT SUM(valor) as totalingresos FROM ingresos;");

Si no hay problemas devuelve un objeto mysqli_result del que hay que extraer los resultados. Si hay problemas devuelve false, por lo que sería bueno escribir al final de la linea "or die(...)":

1
$result = mysqli_query($link, "SELECT SUM(valor) as totalingresos FROM ingresos;") or die(Problemas en el SELECT ".mysql_error())";

3) Extracción de resultados

1
2
3
4
$tabla = null;
while ($row = $result->fetch_array()) {
	$tabla[]=$row;
}

Esto nos genera un array en el que cada elemento es uno de los resultados obtenidos (una linea). En tu caso sólo se debería obtener uno, por lo que es mejor:

1
$totalingresos = $result->fetch_array()

El error que te da es porque intentas ejecutar directamente un comando mysql en php.

Saludos de Víctor.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de VRM
Val: 152
Ha disminuido su posición en 6 puestos en PHP (en relación al último mes)
Gráfica de PHP

Parse error: syntax error, unexpected 'SUM' (T_STRING)

Publicado por VRM (192 intervenciones) el 01/05/2016 07:23:08
Ops. Hay una errata en la linea de la consulta, debe ser:
1
$result = mysqli_query($link, "SELECT SUM(valor) as totalingresos FROM ingresos;") or die("Problemas en el SELECT ".mysql_error());
Estaban mal colocadas las comillas.

Saludos de Víctor.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar