Foros del Web » Programando para Internet » PHP »

Como hago para crear paginas desde una pagina?

Estas en el tema de Como hago para crear paginas desde una pagina? en el foro de PHP en Foros del Web. Hola señores como están? Me vi obligado a molestarlos porque no pude encontrar en ningún lado un código o una serie de ellos que permita ...
  #1 (permalink)  
Antiguo 31/03/2011, 14:27
 
Fecha de Ingreso: marzo-2011
Mensajes: 20
Antigüedad: 13 años, 7 meses
Puntos: 0
Como hago para crear paginas desde una pagina?

Hola señores como están? Me vi obligado a molestarlos porque no pude encontrar en ningún lado un código o una serie de ellos que permita a un usuario crear paginas desde la carga de fotos y texto mediante uploads desde una web.
Ejemplo: Una web de inmobiliaria que contenga una página donde el dueño de la misma pueda cargar nuevos departamentos (fotos + datos de los mismos) via upload y que al hacerlo se genere a partir de esa carga una nueva página que contenga esos archivos siguiendo el formato de la web.

Hasta el momento solo pude crear una página en "PHP"que toma los datos que ingreso en una "html" con método "POST" y los envía a una base de datos "mysql" la cual envía a otra "PHP" la información para que sea plasmada en la web.
Me pregunto: ¿Este es el camino para lograr lo que quiero o tengo que girar para otro lado? AUXILIO POR FAVOR HACE 2 SEMANOS QUE ESTOY CON ESTO!!!!
  #2 (permalink)  
Antiguo 31/03/2011, 14:51
Avatar de almagropaco_  
Fecha de Ingreso: marzo-2008
Ubicación: Mar del Plata
Mensajes: 854
Antigüedad: 16 años, 8 meses
Puntos: 25
Respuesta: Como hago para crear paginas desde una pagina?

No te entendi mucho, pero vas bien, Updates a la bd, y paginas en las que se muestre. Busca simples sitemas de noticias en los que basarte, ya que usarian un sistema similar a tu script..

Para mostrar los datos de una pagina de un user podria ser asi:
paginas.php?usuario=almagropaco
Código PHP:
Ver original
  1. <?php
  2. $consulta=mysql_query("SELECT * FROM paginas WHERE autor = '$_GET[usuario]'");
  3. $row=mysql_fetch_assoc($consulta);
  4.  
  5. ##Diseño de tu web##
  6. echo"
  7. <h2 class='title'>$row[titulo] </h2>
  8. $row[info]
  9. ";
  10. ?>

Suerte
  #3 (permalink)  
Antiguo 31/03/2011, 14:55
 
Fecha de Ingreso: octubre-2010
Ubicación: montevideo
Mensajes: 169
Antigüedad: 14 años, 1 mes
Puntos: 5
Respuesta: Como hago para crear paginas desde una pagina?

hola,dejame ver si te entiendo, tenes una web, donde los registrados entran y suben imagenes,
o al menos eso es lo que queres tener?
decime en que punto estas, ya tenes el sistema de usuarios? por que con un login, cada usario entra con su id a la pagina y modifica los datos, despues en una pagina perfil se muestra lo modificado.
  #4 (permalink)  
Antiguo 31/03/2011, 16:32
 
Fecha de Ingreso: marzo-2011
Mensajes: 20
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Como hago para crear paginas desde una pagina?

Cita:
Iniciado por pablobuitres Ver Mensaje
hola,dejame ver si te entiendo, tenes una web, donde los registrados entran y suben imagenes,
o al menos eso es lo que queres tener?
decime en que punto estas, ya tenes el sistema de usuarios? por que con un login, cada usario entra con su id a la pagina y modifica los datos, despues en una pagina perfil se muestra lo modificado.
Hasta el momento tengo este codigo en donde se conecta a la base de datos ingresando los datos a la a la misma y proyectandolos como un listado en la pagina lectura.php, lo que quiero es que cuando ingrese los datos en vez de figurar en un listado se cree una pagina unica para esos datos. Otra cosa que NO logre es que en el ingreso de datos exista un upload de imagenes que alamcene en la bd las fotos y que se vean como imagen en la pagina unica que quiero que se cree:
Código PHP:
<?php
//Conexion con la base
mysql_connect("localhost","xxxx","xxxx");

//selección de la base de datos con la que vamos a trabajar
mysql_select_db("xxxxx");

//Ejecucion de la sentencia SQL
mysql_query("insert into inmobiliaria (barrio,fotos) values ('$barrio','$fotos')");
?>
<h1><div align="center">Registro Insertado</div></h1>
<div align="center"><a href="lectura.php">Visualizar el contenido de la base</a></div>
Código HTML:
<div align="center">
<h1>Insertar un registro</h1>
<br>
<FORM METHOD="POST" ACTION="prueba2.php">
barrio<br>
<INPUT TYPE="TEXT" NAME="barrio"><br>
fotos<br>
<INPUT TYPE="TEXT" NAME="fotos"><br>
<INPUT TYPE="SUBMIT" value="Insertar">
</FORM>
</div> 
Código PHP:
<h1><div align="center">Lectura de la tabla</div></h1>
<br>
<br>
<?
//Conexion con la base
mysql_connect("localhost","xxxx","xxxxxx");

//selección de la base de datos con la que vamos a trabajar
mysql_select_db("xxxxxxx");

//Ejecutamos la sentencia SQL
$result=mysql_query("select * from inmobiliaria");
?>
<table align="center">
<tr>
<th>Barrio</th>
<th>Fotos</th>
</tr>
<?
//Mostramos los registros
while ($row=mysql_fetch_array($result))
{
echo 
'<tr><td>'.$row["barrio"].'</td>';
echo 
'<td>'.$row["fotos"].'</td></tr>';
}
mysql_free_result($result)
?>
</table>

<div align="center">
<a href="prueba3.html">Añadir un nuevo registro</a><br>
<a href="actualizar1.php">Actualizar un registro existente</a><br>
<a href="borrar1.php">Borrar un registro</a><br>
</div>
  #5 (permalink)  
Antiguo 31/03/2011, 16:50
 
Fecha de Ingreso: octubre-2010
Ubicación: montevideo
Mensajes: 169
Antigüedad: 14 años, 1 mes
Puntos: 5
Respuesta: Como hago para crear paginas desde una pagina?

subirfotos.php
echo'<form method="post" enctype="multipart/form-data" action="prueba1.php?id='.$_GET['id'].'&alguien='.$user_ok['alguien'].'&imagen='.$user_ok['imagen'].'"><b>SUBE IMAGENES A TU ALBUM!</b><br>
<input type=file name="images[]"> <br>
<button name="s1" type="submit"> <B>SUBE IMAGEN </B><img src="flecha.jpg"width="30" height="20"></button>
</form><br><form action="subevideoenlinea.php?id='.$_GET['id'].'&alguien='.$_GET['alguien'].'&imagen='.$user_ok['imagen'].'" method="post" name="p2">';

prueba1.php
<?php
include("prueba2.php"); //script que contiene la funcion para generar los thumbnails
$cont=1;

if(isset($_POST['s1']))
{
if(!empty($_FILES['images']['name'][0]))
{
while(list($key,$value) = each($_FILES['images']['name']))
{
if(!empty($value))
{
//renombra la imagen
$NewImageName = "pic_".$value;

//almacena la imagen en el directorio fotos
copy($_FILES['images']['tmp_name'][$key], "miniaturas/".$NewImageName);

//almacena el nombre de la imagen
$MyImages[] = $NewImageName;

//ubicacion de la imagen original para usar en la funcion que genera el thumbnail
$imagen= "miniaturas/".$NewImageName;

//nombre para el thumbnail para usar en la funcion que lo genera
$nombre_imagen_asociada=$cont.$NewImageName;

//llamada a la funcion que genera el thumbnail
$redim=redimensionar_imagen($imagen, $nombre_imagen_asociada);

//almacena el nombre del thumbnail
$MyThumbs[]=$nombre_imagen_asociada;
$cont++;

}
}

//una vez que se cierra el ciclo
//se almacenan los nombres de todas las imagenes originales en una cadena
//esta cadena quedaria mas o menos asi: foto1.jpg|foto2.jpg|foto3.jpg etc
if(!empty($MyImages))
{
$ImageStr = implode("|", $MyImages);
}

//se almacenan los nombres de los thumbnails de la misma forma que los nombres de las imagenes originales
if(!empty($MyThumbs))
{
$ThumbStr= implode("|" , $MyThumbs);
}

}
//finalmente se almacenan en campos de tipo texto en la base de datos de esta forma
include('config.php');
$alguien= $_GET['alguien'];
$fecha=time();
$parent_id=$_GET['id'];
$query = mysql_query("INSERT INTO aa(normal,chica,parent_id,alguien,fecha) values ('$ImageStr','$ThumbStr','$parent_id','$alguien',' $fecha')");
}
?>
prueba2.php
<?php
function redimensionar_imagen($imagen, $nombre_imagen_asociada)
{
//indicamos el directorio donde se van a colgar las imágenes
$directorio = "miniaturas/" ;
//establecemos los límites de ancho y alto
$nuevo_ancho = 600 ;
$nuevo_alto = 400 ;


//Recojo información de la imágen
$info_imagen = getimagesize($imagen);
$alto = $info_imagen[1];
$ancho = $info_imagen[0];
$tipo_imagen = $info_imagen[2];

//Determino las nuevas medidas en función de los límites
if($ancho > $nuevo_ancho OR $alto > $nuevo_alto)
{
if(($alto - $nuevo_alto) > ($ancho - $nuevo_ancho))
{
$nuevo_ancho = round($ancho * $nuevo_alto / $alto,0) ;
}
else
{
$nuevo_alto = round($alto * $nuevo_ancho / $ancho,0);
}
}
else //si la imagen es más pequeña que los límites la dejo igual.
{
$nuevo_alto = $alto;
$nuevo_ancho = $ancho;
}

// dependiendo del tipo de imagen tengo que usar diferentes funciones
switch ($tipo_imagen) {
case 1: //si es gif ...
$imagen_nueva = imagecreate($nuevo_ancho, $nuevo_alto);
$imagen_vieja = imagecreatefromgif($imagen);
//cambio de tamaño...
imagecopyresampled($imagen_nueva, $imagen_vieja, 0, 0, 0, 0, $nuevo_ancho, $nuevo_alto, $ancho, $alto);
if (!imagegif($imagen_nueva, $directorio . $nombre_imagen_asociada)) return false;
break;

case 2: //si es jpeg ...
$imagen_nueva = imagecreatetruecolor($nuevo_ancho, $nuevo_alto);
$imagen_vieja = imagecreatefromjpeg($imagen);
//cambio de tamaño...
imagecopyresampled($imagen_nueva, $imagen_vieja, 0, 0, 0, 0, $nuevo_ancho, $nuevo_alto, $ancho, $alto);
if (!imagejpeg($imagen_nueva, $directorio . $nombre_imagen_asociada)) return false;
break;

case 3: //si es png ...
$imagen_nueva = imagecreatetruecolor($nuevo_ancho, $nuevo_alto);
$imagen_vieja = imagecreatefrompng($imagen);
//cambio de tamaño...
imagecopyresampled($imagen_nueva, $imagen_vieja, 0, 0, 0, 0, $nuevo_ancho, $nuevo_alto, $ancho, $alto);
if (!imagepng($imagen_nueva, $directorio . $nombre_imagen_asociada)) return false;
break;
}
return true; //si todo ha ido bien devuelve true
}
?>
tenes que crearte una tabla aa con los campos normal,chica,parent_id,alguien,fecha
los campos id,parent_id, fecha son int, los otros varchar, miralo bien, decime si es lo que buscas, y sino vemos.
estos codigos lo que hacen son subir la imagen a la carpeta miniaturas, (tenes que crearla) y sube la original y una redimencionada(por que cada usuario te sube del tamaño que quiere y despues se te complica) lo que tenes que hacer es llamarlas desde php y tendrias que verlas, a mi me costo mucho dar con estos codigos te entiendo espero te sirva,cualquier duda a las ordenes!
  #6 (permalink)  
Antiguo 31/03/2011, 17:10
 
Fecha de Ingreso: marzo-2011
Mensajes: 20
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Como hago para crear paginas desde una pagina?

Cita:
Iniciado por pablobuitres Ver Mensaje
SOS MUY GROSO!!! Ya mismo lo estoy probando, mañana te digo que paso. Gracias Pablo!
  #7 (permalink)  
Antiguo 31/03/2011, 17:55
Avatar de almagropaco_  
Fecha de Ingreso: marzo-2008
Ubicación: Mar del Plata
Mensajes: 854
Antigüedad: 16 años, 8 meses
Puntos: 25
Respuesta: Como hago para crear paginas desde una pagina?

Para de que solo se vea un resultado de acuerdo a los datos ingresados, te diria que averigues mas sobre "WHERE"..

todo lo demas ya te lo resolvio pablo, jaja, saludos
  #8 (permalink)  
Antiguo 01/04/2011, 12:41
 
Fecha de Ingreso: marzo-2011
Mensajes: 20
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Como hago para crear paginas desde una pagina?

Que hago con "subevideoenlinea.php" lo creo, lo ignoro, lo borro??
<form method="post" enctype="multipart/form-data" action="prueba1.php?id='.$_GET['id'].'&alguien='.$user_ok['alguien'].'&imagen='.$user_ok['imagen'].'"><b>SUBE IMAGENES A TU ALBUM!</b><br>
<input type=file name="images[]"> <br>
<button name="s1" type="submit"> <B>SUBE IMAGEN </B><img src="flecha.jpg"width="30" height="20"></button>
</form><br><form action="subevideoenlinea.php?id='.$_GET['id'].'&alguien='.$_GET['alguien'].'&imagen='.$user_ok['imagen'].'" method="post" name="p2">';
  #9 (permalink)  
Antiguo 01/04/2011, 13:06
 
Fecha de Ingreso: marzo-2011
Mensajes: 20
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Como hago para crear paginas desde una pagina?

Pablo disculpame pero no entiendo mucho sobre esto, soy un simple "editor" de web que esta empezando con este quilombo.

Subir.php lo inserto en una pagina php solo o lo agrego junto con otro de los codigos que me pasaste?

En donde me quedan los campos para ingresar los datos? "alguien"

Cuendo dice "include('config.php');" significa que debo crear una pagina php aparte que unicamente contenga "<?php
//Conexion con la base
mysql_connect("localhost","xxxxx","xxxxxx");

//selección de la base de datos con la que vamos a trabajar
mysql_select_db("xxxxx");

//Ejecucion de la sentencia SQL
mysql_query("insert into inmobiliaria (normal,chica,parent_id,alguien,fecha) values ('$ImageStr','$ThumbStr','$parent_id','$alguien',' $fecha')");
}
?>"

DISCULPEN SI SUS OJOS LES DUELEN AL VER ESTAS PREGUNTAS!!
  #10 (permalink)  
Antiguo 01/04/2011, 14:54
 
Fecha de Ingreso: octubre-2010
Ubicación: montevideo
Mensajes: 169
Antigüedad: 14 años, 1 mes
Puntos: 5
Respuesta: Como hago para crear paginas desde una pagina?

estamos para ayudarte, config.php es el archivo de conexion a la base de datos el que yo uso es este y como dice include('config.php'); se refiere a que esta en otra pagina aparte:
<?php
$dbhost="localhost"; //Host del mysql
$dbuser="root"; //Usuario del mysql
$dbpass=""; //Password del mysql
$db="pablo"; //db donde se creará la tabla

mysql_connect("$dbhost","$dbuser","$dbpass");
mysql_select_db("$db");

session_start();
?>
segundo, si tenes que poner el formulario, que creo q le puse subirfoto.php en una pagina, y en otra pones prueba1.php. y en una tercera pones prueba2.php, y tenes que crear tambien una carpeta miniaturas, donde se guardaran las imagenes, lo otro q decias es del subevideoenlinea.php, si eso podes desestimarlo, proba estas cosas y cualquier duda a las ordenes, no te olvides crear la tabla en mysql
  #11 (permalink)  
Antiguo 01/04/2011, 16:18
 
Fecha de Ingreso: marzo-2011
Mensajes: 20
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Como hago para crear paginas desde una pagina?

Cita:
Iniciado por pablobuitres Ver Mensaje
estamos para ayudarte, config.php es el archivo de conexion a la base de datos el que yo uso es este y como dice include('config.php'); se refiere a que esta en otra pagina aparte:
<?php
$dbhost="localhost"; //Host del mysql
$dbuser="root"; //Usuario del mysql
$dbpass=""; //Password del mysql
$db="pablo"; //db donde se creará la tabla

mysql_connect("$dbhost","$dbuser","$dbpass");
mysql_select_db("$db");

session_start();
?>
segundo, si tenes que poner el formulario, que creo q le puse subirfoto.php en una pagina, y en otra pones prueba1.php. y en una tercera pones prueba2.php, y tenes que crear tambien una carpeta miniaturas, donde se guardaran las imagenes, lo otro q decias es del subevideoenlinea.php, si eso podes desestimarlo, proba estas cosas y cualquier duda a las ordenes, no te olvides crear la tabla en mysql
Sos GROSO!! Lo pruebo y te digo. Mil gracias!

En el formulario que postee tenia para que se pueda ingresar datos a la BD, los que me pasaste solo tienen para subir fotos. Si agrego el codigo que tenia para ingresar los datos en mi viejo formulario sirve para el que me diste vos?
Quedaria asi: <div align="center">
<h1>Insertar un registro</h1>
<br>
<FORM METHOD="POST" ACTION="prueba2.php">
barrio<br>
<INPUT TYPE="TEXT" NAME="barrio"><br>
fotos<br>
<INPUT TYPE="TEXT" NAME="fotos"><br>
<INPUT TYPE="SUBMIT" value="Insertar">
</FORM>
echo'<form method="post" enctype="multipart/form-data" action="prueba1.php?id='.$_GET['id'].'&alguien='.$user_ok['alguien'].'&imagen='.$user_ok['imagen'].'"><b>SUBE IMAGENES A TU ALBUM!</b><br>
<input type=file name="images[]"> <br>
<button name="s1" type="submit"> <B>SUBE IMAGEN </B><img src="flecha.jpg"width="30" height="20"></button>
</form><br><form action="subevideoenlinea.php?id='.$_GET['id'].'&alguien='.$_GET['alguien'].'&imagen='.$user_ok['imagen'].'" method="post" name="p2">';
</div>

Última edición por lord_clas; 01/04/2011 a las 16:26
  #12 (permalink)  
Antiguo 01/04/2011, 16:53
 
Fecha de Ingreso: marzo-2011
Mensajes: 20
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Como hago para crear paginas desde una pagina?

Se conecta bien a la bd, me carga los datos, pero no las fotos.
Me esta dando este error:
Warning: copy(miniaturas/pic_cumple.jpg) [function.copy]: failed to open stream: No such file or directory in \\hmfsw\web\dtcwin142\clubeleven.com.ar\public_htm l\prueba1.php on line 25
En la linea 25 esta esto: copy($_FILES['images']['tmp_name'][$key], "miniaturas/".$NewImageName);

Warning: getimagesize(miniaturas/pic_cumple.jpg) [function.getimagesize]: failed to open stream: No such file or directory in \\hmfsw\web\dtcwin142\clubeleven.com.ar\public_htm l\prueba2.php on line 20
En la linea 25 esta esto: $info_imagen = getimagesize($imagen);
  #13 (permalink)  
Antiguo 02/04/2011, 14:40
 
Fecha de Ingreso: octubre-2010
Ubicación: montevideo
Mensajes: 169
Antigüedad: 14 años, 1 mes
Puntos: 5
Respuesta: Como hago para crear paginas desde una pagina?

estas seguro que pusiste la carpeta miniaturas en el mismo directorio donde estan los otros archivos ?o que la nombraste bien? verifica eso, me parece que el error debe estar por esos lugares, por que te copie los codigos tal cual yo los usos y por suerte andan bien, corregi eso y si no es vemos bien, pero mira que muchas veces me tranque por errores de escritura, producto de estar muchas horas frente al minitor. saludos
  #14 (permalink)  
Antiguo 04/04/2011, 13:26
 
Fecha de Ingreso: marzo-2011
Mensajes: 20
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Como hago para crear paginas desde una pagina?

Cita:
Iniciado por pablobuitres Ver Mensaje
estas seguro que pusiste la carpeta miniaturas en el mismo directorio donde estan los otros archivos ?o que la nombraste bien? verifica eso, me parece que el error debe estar por esos lugares, por que te copie los codigos tal cual yo los usos y por suerte andan bien, corregi eso y si no es vemos bien, pero mira que muchas veces me tranque por errores de escritura, producto de estar muchas horas frente al minitor. saludos
Ya corregi el error, tenias razon. El tema era que en el codigo decia "miniaturas/" y la carpeta la nombre "miniaturas" sin la barra.

Perfecto, ya logre que en la BD labure con fotos y se carguen en el servidor. Lo que me resta es saber como agregar a la carga de fotos, datos como "descripcion", ambientes ect.
Tambien me falta saber como hacer para que esos datos y las fotos aparezcan en una nueva pagina con el formato de la web en cuestion. Y otras cosas mas que prefiero preguntar cuando sepa lo anterior.

Etiquetas: Ninguno
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 21:48.