¿Como separar los datos de usuario en diferentes tablas?
Hola buenas tardes.
Tengo una pequeña duda. Esque me gustaria que un usuario al insertar otros datos se guardaran en otra tabla. Eso lo hago mediante :
bien hasta ahi va bien la cosa... el caso que cuando los datos son insertados en esta tabla,,, se me cambia el boton de insertar a editar eso tambien va bien... pero el problema viene que no se como editar de nuevo para que el usurio pueda modificarlo...
si lo hago en la tabla de datosusuario puedo editarlas facilmente. Pero si la hago en otra tabla no me sale por ningun lado. en la tabla datosbanner yo le paso la imagen... la url... y el autor....
sabe alguien como podría hacer esto?
Editado
Tengo una pequeña duda. Esque me gustaria que un usuario al insertar otros datos se guardaran en otra tabla. Eso lo hago mediante :
<?php require_once("../Connections/conexion.php"); ?> <?php if ($_FILES['banner']['type']=='image/png' || $_FILES['banner']['type']=='image/jpeg' || $_FILES['banner']['type']=='image/gif'){ $nombre_archivo = $_FILES['banner']['name']; move_uploaded_file($_FILES['banner']['tmp_name'], "banner/".$nombre_archivo); } $insertSQL = sprintf("INSERT INTO datosbanner (banner, urlbanner, autor) VALUES (%s, %s, %s)", GetSQLValueString($nombre_archivo, "text"), GetSQLValueString($_POST['urlbanner'], "text"), GetSQLValueString($_SESSION['MM_idusuario'], "int")); mysql_select_db($database_conexion, $conexion); $Result1 = mysql_query($insertSQL, $conexion) or die(mysql_error()); $insertGoTo = "editar-perfil-imagenes.php"; if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo)); ?>
bien hasta ahi va bien la cosa... el caso que cuando los datos son insertados en esta tabla,,, se me cambia el boton de insertar a editar eso tambien va bien... pero el problema viene que no se como editar de nuevo para que el usurio pueda modificarlo...
si lo hago en la tabla de datosusuario puedo editarlas facilmente. Pero si la hago en otra tabla no me sale por ningun lado. en la tabla datosbanner yo le paso la imagen... la url... y el autor....
sabe alguien como podría hacer esto?
Editado
0
Puntos
Puntos
1392
Visitas
Visitas
9
Resp
Resp
Por Mavericka3 hace 103 meses
Principiante
Respuesta #1
buenas! en el fichero editar-perfil-imagenes.php tienes que hacer una consulta a la tabla datosbanner donde el autor sea $_SESSION['MM_idusuario'] y cargar esos datos en un formulario:
Salu2
<?php $instruccion=sprintf("SELECT * FROM datosbanner WHERE autor=%s", GetSQLValueString($_SESSION['MM_idusuario'], "int")); $consulta=mysql_query($instruccion); $datos=mysql_fetch_assoc($consulta); ?> <form action="editar.php" method="post"> <input type="text" name="loquesea" value="<?php echo $datos['loquesea'] ?>"> </form> <?php mysql_free_result($consulta); ?>despues tienes que enviar esos datos a un fichero para que haga el UPDATE.
Salu2
1
Puntos
Puntos
Por alber hace 103 meses
Administrador
Respuesta #2
no te olvides de ponerle la conexión:
require_once("../Connections/conexion.php");
1
Puntos
Puntos
Por alber hace 103 meses
Administrador
Respuesta #3
hola Alber muchisimas gracias por responder.
El caso es que lo tengo como tu has dicho:
esta es la consulta:
//CONSULTA BASE DATOS
mysql_select_db($database_conexion, $conexion);
$query_DatosBanner = sprintf("SELECT * FROM datosbanner WHERE autor=%s ",$_SESSION['MM_idusuario'],"int");
$DatosBanner = mysql_query($query_DatosBanner, $conexion) or die(mysql_error());
$row_DatosBanner = mysql_fetch_assoc($DatosBanner);
$totalRows_DatosBanner = mysql_num_rows($DatosBanner);
y me sale la imagen por pantalla y todo...
pero cuando pincho en editar se va a editar-banner.php y tengo el siguiente código: (Se que me falta algo pero no se el qué... no le estoy diciendo el usuario que es creo...
<?php require_once("../Connections/conexion.php"); ?>
<?php
if ($_FILES['banner']['type']=='image/png' || $_FILES['banner']['type']=='image/jpeg' || $_FILES['banner']['type']=='image/gif'){
$nombre_archivo = $_FILES['banner']['name'];
move_uploaded_file($_FILES['banner']['tmp_name'], "banner/".$nombre_archivo);
}
$updateSQL = sprintf("UPDATE datosbanner SET banner=%s, urlbanner=% WHERE id=%s",
GetSQLValueString($nombre_archivo, "text"),
GetSQLValueString($_POST['urlbanner'], "text"));
mysql_select_db($database_conexion, $conexion);
$Result1 = mysql_query($updateSQL, $conexion) or die(mysql_error());
$updateGoTo = "editar-perfil-imagenes.php";
if (isset($_SERVER['QUERY_STRING'])) {
$updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
$updateGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $updateGoTo));
?>
El caso es que lo tengo como tu has dicho:
esta es la consulta:
//CONSULTA BASE DATOS
mysql_select_db($database_conexion, $conexion);
$query_DatosBanner = sprintf("SELECT * FROM datosbanner WHERE autor=%s ",$_SESSION['MM_idusuario'],"int");
$DatosBanner = mysql_query($query_DatosBanner, $conexion) or die(mysql_error());
$row_DatosBanner = mysql_fetch_assoc($DatosBanner);
$totalRows_DatosBanner = mysql_num_rows($DatosBanner);
y me sale la imagen por pantalla y todo...
pero cuando pincho en editar se va a editar-banner.php y tengo el siguiente código: (Se que me falta algo pero no se el qué... no le estoy diciendo el usuario que es creo...
<?php require_once("../Connections/conexion.php"); ?>
<?php
if ($_FILES['banner']['type']=='image/png' || $_FILES['banner']['type']=='image/jpeg' || $_FILES['banner']['type']=='image/gif'){
$nombre_archivo = $_FILES['banner']['name'];
move_uploaded_file($_FILES['banner']['tmp_name'], "banner/".$nombre_archivo);
}
$updateSQL = sprintf("UPDATE datosbanner SET banner=%s, urlbanner=% WHERE id=%s",
GetSQLValueString($nombre_archivo, "text"),
GetSQLValueString($_POST['urlbanner'], "text"));
mysql_select_db($database_conexion, $conexion);
$Result1 = mysql_query($updateSQL, $conexion) or die(mysql_error());
$updateGoTo = "editar-perfil-imagenes.php";
if (isset($_SERVER['QUERY_STRING'])) {
$updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
$updateGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $updateGoTo));
?>
0
Puntos
Puntos
Por Mavericka3 hace 103 meses
Principiante
Respuesta #4
claro en la pagina editar-perfil-imagenes.php tienes que hacer el update a la tabla datosbanner de no ser asi no actualiza ninguno de esos datos
mi recomendación es que si ya tienes una pagina para editar los perfiles y te funciona ahora crear otros archivos iguales pero de manera independiente para editar los banner, en la teoría si lo haces igual tiene que funcionar
despues una vez que lo tengas todo intenta intercalar los archivos aunque no es necesario puedes tener 2 grupos por ejemplo:
grupo1: perfil.php y editar-perfil.php
grupo2: banner.php y editar-banner.php
no te compliques hazlo así pero cambiando las tablas a actualizar
mi recomendación es que si ya tienes una pagina para editar los perfiles y te funciona ahora crear otros archivos iguales pero de manera independiente para editar los banner, en la teoría si lo haces igual tiene que funcionar
despues una vez que lo tengas todo intenta intercalar los archivos aunque no es necesario puedes tener 2 grupos por ejemplo:
grupo1: perfil.php y editar-perfil.php
grupo2: banner.php y editar-banner.php
no te compliques hazlo así pero cambiando las tablas a actualizar
0
Puntos
Puntos
Por alber hace 103 meses
Administrador
Respuesta #5
vale ya eh visto donde tienes el error, te falta un parámetro por eso no te inserta nada de nada:
$updateSQL = sprintf("UPDATE datosbanner SET banner=%s, urlbanner=% WHERE autor=%s", GetSQLValueString($nombre_archivo, "text"), GetSQLValueString($_POST['urlbanner'], "text"), GetSQLValueString($_SESSION['MM_idusuario'], "int")); //Agrega el autormira tu código veras como te falta agregar el autor ;)
0
Puntos
Puntos
Por alber hace 103 meses
Administrador
Respuesta #6
hola alber... perdona por ser tan pesado pero esque por mucho que lo hago no me sale. Tal vez no me he explicado bien yo esque ya no lo sé.
mira este es el código con el que lo inserto:
$nombre_archivo = $_FILES['banner']['name'];
$partes=explode('.',$nombre_archivo);
$nombre=$partes['0'];
$extension=$partes['1'];
if ($_FILES['banner']['type']=='image/png' || $_FILES['banner']['type']=='image/jpeg' || $_FILES['banner']['type']=='image/gif'){
move_uploaded_file($_FILES['banner']['tmp_name'], "banner/".$_SESSION['MM_idusuario'].'.'.$extension);
}
$insertSQL = sprintf("INSERT INTO datosbanner (banner, urlbanner, autor) VALUES (%s, %s, %s)",
GetSQLValueString($_SESSION['MM_idusuario'].'.'.$extension, "text"),
GetSQLValueString($_POST['urlbanner'], "text"),
GetSQLValueString($_SESSION['MM_idusuario'], "int"));
mysql_select_db($database_conexion, $conexion);
$Result1 = mysql_query($insertSQL, $conexion) or die(mysql_error());
$insertGoTo = "editar-perfil-imagenes.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
y funciona fantasticamente...
y este es con el que lo intento editar:
$nombre_archivo = $_FILES['banner']['name'];
$partes=explode('.',$nombre_archivo);
$nombre=$partes['0'];
$extension=$partes['1'];
move_uploaded_file($_FILES['banner']['tmp_name'], "banner/".$_SESSION['MM_idusuario'].'.'.$extension);
$updateSQL = sprintf("UPDATE datosusuario SET banner=%s, urlbanner=%s WHERE id=%s",
GetSQLValueString($_SESSION['MM_idusuario'].'.'.$extension, "text"),
GetSQLValueString($_POST['urlbanner'], "int"),
GetSQLValueString($_SESSION['MM_idusuario'], "int"));
mysql_select_db($database_conexion, $conexion);
$Result1 = mysql_query($updateSQL, $conexion) or die(mysql_error());
$updateGoTo = "editar-perfil-imagenes.php";
if (isset($_SERVER['QUERY_STRING'])) {
$updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
$updateGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $updateGoTo));
esta vez cuando hago click en guardar me sale Unknown column 'banner' in 'field list'
ESQUE YA NO SÉ LO QUE HACER ALBER JAJAJAJ ESTOY SUPER RAYADO...
mira este es el código con el que lo inserto:
$nombre_archivo = $_FILES['banner']['name'];
$partes=explode('.',$nombre_archivo);
$nombre=$partes['0'];
$extension=$partes['1'];
if ($_FILES['banner']['type']=='image/png' || $_FILES['banner']['type']=='image/jpeg' || $_FILES['banner']['type']=='image/gif'){
move_uploaded_file($_FILES['banner']['tmp_name'], "banner/".$_SESSION['MM_idusuario'].'.'.$extension);
}
$insertSQL = sprintf("INSERT INTO datosbanner (banner, urlbanner, autor) VALUES (%s, %s, %s)",
GetSQLValueString($_SESSION['MM_idusuario'].'.'.$extension, "text"),
GetSQLValueString($_POST['urlbanner'], "text"),
GetSQLValueString($_SESSION['MM_idusuario'], "int"));
mysql_select_db($database_conexion, $conexion);
$Result1 = mysql_query($insertSQL, $conexion) or die(mysql_error());
$insertGoTo = "editar-perfil-imagenes.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
y funciona fantasticamente...
y este es con el que lo intento editar:
$nombre_archivo = $_FILES['banner']['name'];
$partes=explode('.',$nombre_archivo);
$nombre=$partes['0'];
$extension=$partes['1'];
move_uploaded_file($_FILES['banner']['tmp_name'], "banner/".$_SESSION['MM_idusuario'].'.'.$extension);
$updateSQL = sprintf("UPDATE datosusuario SET banner=%s, urlbanner=%s WHERE id=%s",
GetSQLValueString($_SESSION['MM_idusuario'].'.'.$extension, "text"),
GetSQLValueString($_POST['urlbanner'], "int"),
GetSQLValueString($_SESSION['MM_idusuario'], "int"));
mysql_select_db($database_conexion, $conexion);
$Result1 = mysql_query($updateSQL, $conexion) or die(mysql_error());
$updateGoTo = "editar-perfil-imagenes.php";
if (isset($_SERVER['QUERY_STRING'])) {
$updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
$updateGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $updateGoTo));
esta vez cuando hago click en guardar me sale Unknown column 'banner' in 'field list'
ESQUE YA NO SÉ LO QUE HACER ALBER JAJAJAJ ESTOY SUPER RAYADO...
0
Puntos
Puntos
Por Mavericka3 hace 103 meses
Principiante
Respuesta #7
Muy sencillo Unknown column 'banner' in 'field list' (No encuentra la columna banner dentro de la tabla datosusuario), entra en tu phpmyadmin y entras a la tabla datosusuario para comprobar si existe esa columna llamada banner o revisa que este bien escrita y coincide ;)
1
Puntos
Puntos
Por alber hace 103 meses
Administrador
Respuesta #8
jajajajaj lo siento alber no puedo... soy un patán...
da igual me lo dejare como pendiente... cuando acabe el proyecto contactaré con Zeus para tenerlo todo el día conmigo para corregir algunos errores ejejej o atí claro esta no se quien de los dos hace las tutorias... de todas formas muchisimas gracias siempre te lo dire alber!!!
da igual me lo dejare como pendiente... cuando acabe el proyecto contactaré con Zeus para tenerlo todo el día conmigo para corregir algunos errores ejejej o atí claro esta no se quien de los dos hace las tutorias... de todas formas muchisimas gracias siempre te lo dire alber!!!
1
Puntos
Puntos
Por Mavericka3 hace 103 meses
Principiante
Respuesta #9
de nada jeje la verdad que tienes un lío montado bastante importante xd
saludos!
saludos!
0
Puntos
Puntos
Por alber hace 103 meses
Administrador