Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Foto de jugadores (Escuela de futbol)

Buenos días compañeros

Tengo un problemilla con un script de imagenes.

Resulta que yo entro con mi usuario (administrador de la pagina) en la pagina de mi equipo de futbol. Desde mi usuario voy dando de alta a los diferentes jugadores pero el problema que tengo es que cuando doy de alta un nuevo jugador me cambia la foto de los demas jugadores. Yo creo que es porque el script que tengo lo que me va cambiando la imagen de mi usuario. Os dejo el codigo.

<?php if ((isset($_POST["enviado"]) == "form1")) {

if (($_FILES['userfile']['size']>102400) || ($_FILES['userfile']['type'] != "image/jpeg"))
echo "Esta imagen no es valida, prueba con otra";
else
{
$nombre_archivo = $_FILES['userfile']['name'];
move_uploaded_file($_FILES['userfile']['tmp_name'], "avatar/".$_SESSION['MM_Id'].".jpg");

?>
<script>
opener.document.form1.avatar.value="<?php echo $_SESSION['MM_Id']; ?>.jpg";
self.close();
</script>
<?php
}
}


Me va guardando la foto dentro de avatar pero va cambiando la foto del usuario y no la de los distintos jugadores.

¿Como puedo solucionarlo?

Un saludo y muchisimas gracias por todo

Miguel A.
5
Puntos
1389
Visitas
3
Resp
Por MiGuEJeReZ hace 119 meses
Avanzado Sitio web
Respuesta #1
Hola Miguel, sobre lo que leí. Entiendo que "Tu foto se cambia, cada vez que das de alta a un nuevo usuario, pero debe cambiársela es a los jugadores". ¿no?

Si es así, me parece que el problema viene en ésta línea
move_uploaded_file($_FILES['userfile']['tmp_name'], "avatar/".$_SESSION['MM_Id'].".jpg");
ya que lo último: $_SESSION["MM_Id"] está tomando la ID del usuario que tiene la sesión iniciada. Por ejemplo si tu inicias con tu usuario, y tu ID es 1. Todas las fotos que actualices tendrán esa ID, según el script.

La solución es cambiar eso por la ID del usuario al que darás de alta.
5
Puntos
Por Jose hace 119 meses
Experto Sitio web
Respuesta #2
Buenos días, yo también creo que el fallo es ese, ¿qué es lo que tendría que poner entonces? Lo que tengo que cambiar es lo de MM_Id
0
Puntos
Por MiGuEJeReZ hace 119 meses
Avanzado Sitio web
Respuesta #3
Hola Miguel, debes hacer una consulta donde saques el ID del nombre del jugador y reemplazar el dato.

Un ejemplo corto, para que tengas una idea..
<?php

$SQL_datos_jugadores = sprintf("SELECT id FROM miembros WHERE nombre=%s", GetSQLValueString($nombreDelJugador, "text"));

$query_datos_jugadores = mysql_query("$SQL_datos_jugadores");

if ($resultado = mysql_fetch_assoc($query_datos_jugadores)) { 
	if (($_FILES['userfile']['size']>102400) || ($_FILES['userfile']['type'] != "image/jpeg")) {
		echo "Esta imagen no es valida, prueba con otra";
	} else {
		$nombre_archivo = $_FILES['userfile']['name']; 
		move_uploaded_file($_FILES['userfile']['tmp_name'], "avatar/".$resultado["id"];.".jpg");
	}
}
?>

No se como funciona tu página, me refiero a no se si eliges al jugador con un select, o escribes su nombre en un input, o qué.. Lo digo porque lo que te puse ahí como $NombreDelJugador debes obtenerlo pero eso depende de como tú lo hayas desarrollado.

El ejemplo que te di no es la solución absoluta, por la misma razón, desconozco la estructura y código de script. Pero es para que tengas más o menos una idea. (-:
10
Puntos
Por Jose hace 119 meses
Experto Sitio web
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate