Foros del Web » Programando para Internet » PHP »

mysql_query dentro de funcion no hace nada

Estas en el tema de mysql_query dentro de funcion no hace nada en el foro de PHP en Foros del Web. Hola, he estaod buscando por los foros y veo situaciones parecidas pero no me acaba de quedar claro como se hace. Yo tengo una funcion ...
  #1 (permalink)  
Antiguo 26/01/2006, 09:41
 
Fecha de Ingreso: enero-2006
Mensajes: 38
Antigüedad: 18 años, 2 meses
Puntos: 0
Pregunta mysql_query dentro de funcion no hace nada

Hola, he estaod buscando por los foros y veo situaciones parecidas pero no me acaba de quedar claro como se hace.

Yo tengo una funcion en un archivo funcion.php:

Código PHP:
<?
function lafuncion($numero)
{
$total=$numero*10;

mysql_query("UPDATE base.tabla SET sumas=sumas+'$total' WHERE nombre='algo'");

echo 
"El reultado es ".$total." si esto aparece es que se ejecuta la funcion";
}
?>
Y luego quiero que se ejecute en otro archivo php:

Código PHP:
<?
mysql_connect
("localhost","","");
include(
"funcion.php");

$numero=5;

lafuncion($numero);
?>
Pues no hace nada en la base de datos, he leido por ahí cosas acerca de que no se conecta la función, pero he probado a incluir mysql_connect("localhost","",""); dentro de la funcion en el archivo funcion.php y nada.

¿Qué me falta?

Edito: Añado un echo a la funcion, el echo si se muestra, pero la base de datos no cambia, sin embargo poniendo el contenido de la funcion directamente en el documento principal si se ejecutan todas las acciones, tanto echo como consulta de base de datos ¿?

Muchas gracias y saludos!

Última edición por akalon; 26/01/2006 a las 10:04
  #2 (permalink)  
Antiguo 26/01/2006, 09:43
Avatar de forecast  
Fecha de Ingreso: octubre-2004
Mensajes: 259
Antigüedad: 19 años, 6 meses
Puntos: 4
Yo lo veo bien....

Prueba a hacer un echo de sólo la función (a ver si entra)... a ver si eso, una consulta en una función se ejecuta seguro.

Despues prueba que estés conectado (haz la consulta en el archivo principal).

Ciao.
  #3 (permalink)  
Antiguo 26/01/2006, 10:07
 
Fecha de Ingreso: enero-2006
Mensajes: 38
Antigüedad: 18 años, 2 meses
Puntos: 0
El echo si que se muestra asi que la función se está ejecutando y sí que funciona metiendo el contenido de la función directamente en el principal.

Pero como función no...
  #4 (permalink)  
Antiguo 26/01/2006, 10:14
 
Fecha de Ingreso: diciembre-2005
Ubicación: Madrid, España
Mensajes: 154
Antigüedad: 18 años, 3 meses
Puntos: 2
Creo que no has seleccionado la base de datos. Prueba con esto:

$link = mysql_connect($host,$user,$password) or die ("No puedo conectar"); // Configura esto a tu medida

mysql_select_db($db,$link) or die ("No encuentro la bd"); // $db tu base de datos

Prueba además a sacar por pantalla todos tus errores de MySQL:

$result = mysql_query($sql, $link);
if (!$result)
{
echo ("MySQL error: " . mysql_error());
exit();
}


Saludos
  #5 (permalink)  
Antiguo 26/01/2006, 10:24
 
Fecha de Ingreso: enero-2006
Mensajes: 38
Antigüedad: 18 años, 2 meses
Puntos: 0
Pero sin la funcion si que hace los cambios en la base de datos, ya que la selecciona por medio de basededatos.tabla dentro del propio mysql_query así que la cosa cambia solo cuando el mysql_query está dentro de una función, así que no creo que sea eso... de todas formas voy a probarlo.

Gracias!
  #6 (permalink)  
Antiguo 26/01/2006, 10:52
 
Fecha de Ingreso: enero-2006
Mensajes: 38
Antigüedad: 18 años, 2 meses
Puntos: 0
Ya está arreglado, el caso que he puesto estaba bien. El fallo era en mi función original que faltaba el parámetro de ¡¡¡¡¡ la ID que es lo que toma de referencia para todas las modificaciones!!!!! por declarar en los paréntesis de la función (casi nada el fallo vamos)

El método que expone Radian funciona perfectamente, el fallo iba por otro lado.

Muchas gracias a los 2!

Saludos!
  #7 (permalink)  
Antiguo 31/08/2008, 12:03
Avatar de JoseAlejandro_Realza  
Fecha de Ingreso: agosto-2008
Ubicación: Maracay - Venezuela
Mensajes: 192
Antigüedad: 15 años, 8 meses
Puntos: 2
Respuesta: mysql_query dentro de funcion no hace nada

Muchisimas Gracias A Los Que Me Ayudaron.... Ya complete el Script y trabaja perfectamente, y principalmente an Ronruby

<?php

include("configuracion.php");
include("loginusuarios.php");

$dbhost = "localhost"; // pondremos nuestro host
$dbuser = "miusuario"; // nuestro usuario...
$dbpass = "mipass"; // y nuestro pass
$db = "enmaracay_usuarios"; // el nombre de la db

mysql_connect($dbhost,$dbuser,$dbpass); //conectamos a la BD
mysql_select_db($db);

if(isset($submit))
{
if (is_uploaded_file($_FILES['imagen']['tmp_name']))
{
//revisamos que sea jpg
if ($_FILES['imagen']['type'] == "image/jpeg" || $_FILES['imagen']['type'] == "image/pjpeg")
{
//nuevo nombre para la imagen
$nuevoNombre = time().".jpg";
//movemos la imagen
move_uploaded_file($_FILES['imagen']['tmp_name'], "fotografias/$nuevoNombre");
//obtenemos la inforamción
$nombre = "fotografias/$nuevoNombre";
mysql_query("UPDATE usuarios SET avatar='$nombre' WHERE id='$_COOKIE[id]'")or die(mysql_error()); // bueno aca por ultimo insertas a la Bd el nombre y la ruta del archivo
$data = GetImageSize("fotografias/$nuevoNombre");
//mensaje de éxito
echo "<img src='fotografias/$nuevoNombre' $data[3]> <br> imagen $nuevoNombre subida con éxito";
}
else {
echo "Formato no válido para fichero de imagen";
}
}
else {
echo "Error al cargar imagen: " . $_FILES['imagen']['name'];
}
}

?>

<form enctype="multipart/form-data" action="<? echo $PHP_SELF;?>" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="100000">
Subir esta imagen: <input name="imagen" type="file">
<input type="submit" name='submit' value="Subir Fichero">
</form>
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 17:42.