Algunos problemitas con Php y demás..

Bi0HaZaR

Buenaaaas, por fin estoy acabando la web ya, gracias a todos por vuestras ayudas, pero aun me quedan algunos problemitas que no logro resolver..

los voy poniendo aqui, asi ordenados e intentare explicarme lo mejor posible.. vamos allá:

1. estuve leyendo por aqui por los foros, que alguien preguntaba lo de como hacer para crear un archivo, por ejemplo, miembros.php y que se muestren los miembros registrados (con el sistema de usuarios de rubenico) bien, logré ponerlo y tal, pero también lei esto:

//Tambien puedes poner un echo "<a href=perfil.php?name=$row['user']>

lo he intentado añadir, pero no consigo que funcione, y aparte.. me gustaría que crease el link al mostrar el usuario, osea cuando le doy a la página me muestra el nick y me da la posibilidad de seguir un enlace para mostrar su perfil, me explico?


  1. también me gustaría hacer una forma de que cada uno pueda editar su perfil, poniendo un link al logearse y permitiendole esto y si es posible añadir una opcion para subir su foto y que la publique en el perfil

  1. que es lo que está mal en este codigo? no consigo que me muestre los últimos posts del foro phpbb:

<? $ultimosPosts=mysql_query("SELECT * FROM phpbb_posts ORDER BY id DESC LIMIT 8");
while ($rowPosts=mysql_fetch_array($selec)) { ?>
</td>
</tr><tr>
<a href="foro/viewtopic.php?t=1&id=<?=$rowPosts[id]?>">
<?=$rowPosts['subject']?>
</a></font></font></th>
</tr>
<? } ?>


y por último.. habría alguna forma de hacer que la base de datos lea un archivo php? sería para poner últimas canciones, por ejemplo, sin tener que añadirlas yo a mano en la bdd, si no que esta leyera el archivo canciones.php y se mostrase en el index, en el apartado ultimas canciones, las ultimas 10 canciones, por ejemplo

creo que me he pasado pidiendo, son las ultimas dudas que me han quedado y que no he sabido resolver, ya con eso dejaria de molestaros xDD
perdonarme, no tenia mucha idea de php, y si, ando un poco perdido, pero menos que antes, ya ahora al acabar esta web me pondré a practicar en php y asi ya aprendo que es lo que tendria que haber hecho antes :P
muchas gracias y perdon de nuevo :/

B

Primero de todo organizate un poquillo al explicar, porque lo has querido meter todo en un post y no se te entiende muy bien pero güeno.
Lo que dices de las canciones es hacer que lea cada una de las lineas de un fichero y que las muestre. Si no he entendido mal es esto:
<?

// Ejemplo de como abrir un fichero y leer sus lineas

$fichero = 'rutafichero/fichero.extension';
$manejador = fopen($fichero, 'r'); // 'r' para lectura, 'w' escritura, etc...
while (!feof($manejador)){ // Mientras que no hayamos llegado al final...
$buffer = fgets($manejador,4096); // Almacenamos en $buffer la linea o si la linea es mas grande hasta 4096 bytes
// Aqui muestras las canciones
}
fclose($manejador);

?>

En cuanto a lo otro, explicate mejor porque no lo he entendido.

PD: a un fichero de datos dale una extension apropiada. No se le puede dar extension .php a ese tipo de ficheros; dale por ejemplo .dat, .txt, .src ...

Documentacion de PHP:
http://www.php.net
http://www.programacion.com/php/
http://www.php-hispano.net

Hay infinidad de sitios en la red aunque yo soy mas partidario de los libros por lo tradicional

DArgo

Lo que tendrias que hacer para que a la hora de mostrar los usuarios te los mostrara segun el id sólo tendrias que hacer un cambio de nada en la consulta al mysql y seria mas o menos asi $consulta = mysql_query("SELECT * FROM usuarios WHERE id = '$id'"), siempre y cuando hayas comprobado que se haya introducido un id ($HTTP_ENV_VARS[$id]): creo que era asi no estoy seguro). Con esto seleccionarias el unico usuario que tiene como id el que le has pasado.
Para publicar la foto, puedes hacerlo de varias formas, por mysql (es un poco rollo) o hacerlo por ficheros. Con este último método, podrias hacerlo comprobando que si en una carpeta tuya creada para tal fin, existe una foto con el mismo nombre que el usuario (o el id, a tu gusto) y con extension de imagen (png, jpg, gif...) entonces la muestras. Si lo que te interesa es hacerlo de este modo, busca scripts en cualquier lado para mover imagenes vía web que seguro que encuentras (www.google.com)

Espero haberte ayudado, pero es que leer el post me ha resultado un poco confuso

PD: xterico puta te me has adelantado! xD

Bi0HaZaR

jaja perdonarme, ya lo he editado, pero no se como explicarlo mejor.. a ver..

respecto a lo de xterixco, yo lo que tengo es un documento llamado paridas.php, ahi voy actualizandolo a mano con las paridas que vamos diciendo, y yo en el index de la web, tengo arriba un bloque que pone "Ultimas Paridas" y lo que buscaba es hacer que las paridas que voy guardando en el php, la base de datos las lea y las publique ahí, a ver si asi se me entiende mejor :P

uhm.. y dargo, respecto a lo que me has contestadom todo esop lo tengo, el problema esta en que me dice esto: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/vcr4e/public_html/index3.php on line 110 y en la linea 110 está esto: while ($rowPosts=mysql_fetch_array($selec)) { ?>

lo que no se es que es lo que he escrito mal :/

muchas gracias a los dos por contestar, perdonar que no pueda explicarme mejor, pero me cuesta explicar algo que no controlo demasiado :s gracias :P

Whose

Te veo un poco perdido, te contestare a lo de tener fotos cada usuario.
Primero necesitaras una manera de subir el archivo al servidor, te aconsejo que hagas como MV y lo renombres a la id del usuario.

Para subir el fichero (En esta caso la foto del usuario) puedes hacerlo con esto mismo:
http://www.php-hispano.net/archivos/Scripts/47/1
No se trata de que lo pongas y funcione, tienes que adaptarlo a tus necesidades (que funcione solo si esta logeado, que lo renombre con su id y alguna cosilla mas que tienes que currarte tu)

Luego a la hora de ver la imagen, yo en mis foros tengo esto para los avatares, te valdra igual para la foto (Esto lo que hace es comprobar si existe el archivo .jpg o .gif, si no existe ninguna de las dos simplemente no imprime nada

Lo subo que se come el echo con las imagenes:
www.whose-gfx.net/uploads/fichero.txt

erdanblo

Lo que pasa es que en el tema de las imágenes... si es una web con mucha gente y demás tendría cuidado, porque la gente empieza a poner fotos muy grandes y todo se desencaja... yo buscaria también algo para utilizar la libreria GD de Php y que te reedimensione la imágen o como en mv que no deja subir una imágen mayor a 56x56px

Para lo de la libreria GD y reedimensionar, hay funciones por php-hispano.

Y sobre lo de mirar el tamaño no se... pero creo que también es con GD o alguna función pero lo desconozco totalmente.

IS4kO

nose si lo habreis dicho ya pero yo en su dia lo hice tal que asinn:

<?

//Datos del arhivo
$nombre_archivo = $HTTP_POST_FILES['userfile']['name'];

$tipo_archivo = $HTTP_POST_FILES['userfile']['type'];

$tamano_archivo = $HTTP_POST_FILES['userfile']['size'];

//Comprobación

if (!((strpos($tipo_archivo, "gif") || strpos($tipo_archivo, "jpeg")) && ($tamano_archivo < 375000))) {
echo "Archivo no valido";
}else{
if (move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "directorioandelavasasubir/$nombre_archivo")){
echo "El archivo ha sido cargado correctamente.";
//Conexión
mysql_connect("...","...","...");
mysql_db_query("BASEDEDATOS","insert into galeria (titulo,fecha,comentario) values ('$nombre_archivo','$fecha','$comentario')");
}else{
echo "Ocurrió algún error al subir el fichero. No pudo guardarse.";
}
}
?>

Sorry opr las tabulaciones, como verás el nombre del archivo la fecha y los comentarios se los paso por url, tu puedes o no hacer lo mismo, como te decian antes, pues solo le pasas la id del usuario y se lo pones como nombre de archivo

Bi0HaZaR

Uhhm.. gracias a todos, voy a ir probando a ver, una cosita, si no es molestia.. podriais decirme que es lo que tengo mal en el codigo del punto 3? para lo de mostrar los ultimos posts del foro phpbb, que me dice:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/vcr4e/public_html/index3.php on line 110

Gracias a todosssss

Usuarios habituales