Recordad que para pedir soporte alguno, debéis facilitar los datos de soporte oportunos por favor, mirad aquí y leer las Normas generales del foro, esto nos servirá de ayuda para dar el mejor soporte..

Gracias.

La Administración de phpBB España.

Página personalizada con consulta SQL 2Tema Solucionado

Soporte de MODs para phpBB 3.0.x
Dudas sobre AutoMOD aquí por favor.

0
No hay votos
 
Votos totales: 0

Omega100
Asiduo/a
Mensajes: 140
Registrado: 17 Ene 2011, 15:07
Edad: 32

Página personalizada con consulta SQL 2

#1

Mensaje por Omega100 »

Estoy leyendo el tema (http://www.phpbb-es.com/foro/soporte-mo ... ml#p205173) y es practicamente lo que yo intento hacer. Me encuentro en su situacion de que se poco y hago lo que puedo.
Vereis, de html tengo:

Código: Seleccionar todo

<!-- INCLUDE overall_header.html -->

    <h2>Listas de Animes en Animeien</h2>

    <div class="panel">
       <div class="inner"><span class="corners-top"><span></span></span>

			LO PRIMERO: {anime.DATO_1} , Y LO SEGUNDO: {anime.DATO_2} .

       <span class="corners-bottom"><span></span></span></div>
    </div>

    <!-- INCLUDE overall_footer.html -->
y de PHP tengo:

Código: Seleccionar todo

<?php
	define('IN_PHPBB', true);
	$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
	$phpEx = substr(strrchr(__FILE__, '.'), 1);
	include($phpbb_root_path . 'common.' . $phpEx);

	// Start session management
	$user->session_begin();
	$auth->acl($user->data);
	$user->setup('viewtopic'); 
	if ($user->data['user_id'] == ANONYMOUS)
	{
		login_box('', $user->lang['LOGIN']);
	} 
	
	page_header('Lista de Animes');
	
	$consultanombre="SELECT nombre FROM anime"; 
	$resultadonombre=mysql_query($consultanombre); 
	$num_resultadosnombre=mysql_num_rows($resultadonombre);
	echo $resultadonombre;

	for ($y = 0; $y < $num_resultadosnombre; $y++)
{
	$template->assign_block_vars('anime', array(
		'DATO1' => $resultadonombre["dato1"],
		'DATO2' => $num_resultadosnombre["dato2"],
	));
}

	$template->set_filenames(array(
		'body' => 'Animes.html',
	));

	make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
	page_footer();
	?>
El cual me devuelve este error:
[phpBB Debug] PHP Warning: in file [ROOT]/Animes.php on line 17: mysql_num_rows() expects parameter 1 to be resource, boolean given
En la base de datos tengo:

Código: Seleccionar todo

+----------+--------------------+------------------+---------------------+
| ID_SERIE | NOMBRE             | FOTO             | URL                 |
+----------+--------------------+------------------+---------------------+
|        5 | Black Root Shooter | blackrootshooter | blackrootshooterURL |
|        6 | Elfen Lied         | elfenlied        | elfenliedURL        |
+----------+--------------------+------------------+---------------------+
Perdón si se ve algo mal, es copiado de símbolos de sistema jeje


Solo intento representar algo pues cuando tenga algo ya me comeré la cabeza para ponerlo como me guste, pero no consigo ni eso. En ese ejemplo intento representar el primer nombre, y ver la variable pero es que estoy un poco desorientado.

http://www.animeien.com/Animes.php

Ayuda porfavor =D
Última edición por Omega100 el 30 Mar 2012, 20:03, editado 1 vez en total.
URL: http://animeien.com
Plantilla(s) usuada(s): Attriuum
MODs instalados: He instalado varios y no se como mirar cuales instale.
Versión de phpBB: 3.0.10
Servidor: MySQL(i) 5.0.91-log
Si es una actualización desde otra versión: si de la 3.0.6
Si es una conversión desde otro tipo de Foro: No

Avatar de Usuario
Makoto
Elite
Mensajes: 2929
Registrado: 10 Sep 2009, 23:44
Género:
Edad: 35

Re: Página personalizada con consulta SQL 2

#2

Mensaje por Makoto »

Código: Seleccionar todo

echo $resultadonombre;
creo que no debe ir adelante echo
para que poner el enlace a la pagina si pide identificacion
URL del foro: FIIS-UNAC
Versión phpBB: phpBB3 ( 3.1.5)
Extensiones Instaladas
SPOILER_SHOW
  • Add User 1.0.2
  • Auto Database Backup 1.1.0
  • Auto Groups 1.0.0
  • Avatars on Memberlist 1.0.3
  • Board Announcements 1.0.2
  • Board Rules 1.0.1
  • cBB Chat 1.1.1
  • Fancy Lazy Topics loader 2.1.5
  • Genders 1.0.0
  • Last Post Avatar
  • Log failed logins
  • Rank Post Styling
  • Share On 1.0.0
  • SiteSplat BBCore 2.1.1
  • Sortables Captcha 2.0.0
  • Topic Author 1.0.1
  • Upload Extensions 3.1.2-beta2
Plantilla(s) usada(s):
  • FLATBOOTS 2.0.1
Servidor: Dattatec[/size]

Omega100
Asiduo/a
Mensajes: 140
Registrado: 17 Ene 2011, 15:07
Edad: 32

Re: Página personalizada con consulta SQL 2

#3

Mensaje por Omega100 »

Bueno en teoría debe representarlo por el template así que esa linea no debería tener mucho sentido ahí.
Puse la pagina por que no me di cuenta de lo de la identificación, os borro eso y ya se lo pondré cuando resuelva el problema así podréis verlo, eh de decir que en la web me tira 3 errores y en el local solo uno, algo curioso, pero igualmente no me funciona.
URL: http://animeien.com
Plantilla(s) usuada(s): Attriuum
MODs instalados: He instalado varios y no se como mirar cuales instale.
Versión de phpBB: 3.0.10
Servidor: MySQL(i) 5.0.91-log
Si es una actualización desde otra versión: si de la 3.0.6
Si es una conversión desde otro tipo de Foro: No

Omega100
Asiduo/a
Mensajes: 140
Registrado: 17 Ene 2011, 15:07
Edad: 32

Re: Página personalizada con consulta SQL 2

#4

Mensaje por Omega100 »

Siento el doble post.

Me he dado cuenta de que tenia algo mal:

Código: Seleccionar todo

	$template->assign_block_vars('anime', array(
		'DATO_1' => $resultadonombre["dato1"],
		'DATO_2' => $num_resultadosnombre["dato2"],
	));
Eso debería ser así...
Aun así no me visualiza nada.
URL: http://animeien.com
Plantilla(s) usuada(s): Attriuum
MODs instalados: He instalado varios y no se como mirar cuales instale.
Versión de phpBB: 3.0.10
Servidor: MySQL(i) 5.0.91-log
Si es una actualización desde otra versión: si de la 3.0.6
Si es una conversión desde otro tipo de Foro: No

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 36

Re: Página personalizada con consulta SQL 2

#5

Mensaje por Alorse »

Y donde esta la conexión a la base de datos?
Ya que no estas usando los comandos SQL de phpBB, por lo tanto debes tener una conexión a la base de datos y usar los prefijos correctos de phpBB, que son de la forma $db->sql_query($sql);

Omega100
Asiduo/a
Mensajes: 140
Registrado: 17 Ene 2011, 15:07
Edad: 32

Re: Página personalizada con consulta SQL 2

#6

Mensaje por Omega100 »

la base de datos es la misma que la de phpbb3 solo he creado una tabla mas.
Si es la misma también tengo que hacer otra conexión??
He de usar entones prefijos de phpbb3 imagino que serán diferentes, ¿cuales? :roll:

Es decir, donde tengo:
$resultadonombre=mysql_query($consultanombre);

Tengo que poner:
$resultadonombre=sql_query($consultanombre);

quitar los my de las funciones? me quede un poco liado.

Gracias de antemanos =)
Última edición por Omega100 el 02 Abr 2012, 09:50, editado 1 vez en total.
URL: http://animeien.com
Plantilla(s) usuada(s): Attriuum
MODs instalados: He instalado varios y no se como mirar cuales instale.
Versión de phpBB: 3.0.10
Servidor: MySQL(i) 5.0.91-log
Si es una actualización desde otra versión: si de la 3.0.6
Si es una conversión desde otro tipo de Foro: No

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 36

Re: Página personalizada con consulta SQL 2

#7

Mensaje por Alorse »

Es algo más complejo que eso, si te fijas las tablas de phpBB todas tienen un prefijo que por lo general es [b]phpbb_[/b]nombre_tabla, puedes verificar tu prefijo entrando a la base de datos, así que ese mismo prefijo debes ponérselo a la nueva tabla que has creado.
Luego de ello debes definir la nueva tabla en el archivo includes/constants.php, si detallas el archivos, sabrás donde declararla.

Y la consulta ya quedaría así:

Código: Seleccionar todo

	$consultanombre="SELECT nombre FROM " . ANIME_TABLE; 
	$resultadonombre = $db->sql_query($consultanombre); 

Omega100
Asiduo/a
Mensajes: 140
Registrado: 17 Ene 2011, 15:07
Edad: 32

Re: Página personalizada con consulta SQL 2

#8

Mensaje por Omega100 »

okey, mas o menos entendí, voy a ponerme a trabajar en ello, os comento próximamente las novedades a ver si hay suerte =)

Gracias!!
URL: http://animeien.com
Plantilla(s) usuada(s): Attriuum
MODs instalados: He instalado varios y no se como mirar cuales instale.
Versión de phpBB: 3.0.10
Servidor: MySQL(i) 5.0.91-log
Si es una actualización desde otra versión: si de la 3.0.6
Si es una conversión desde otro tipo de Foro: No

Omega100
Asiduo/a
Mensajes: 140
Registrado: 17 Ene 2011, 15:07
Edad: 32

Re: Página personalizada con consulta SQL 2

#9

Mensaje por Omega100 »

Siento repetir porst, pero ya no me deja editar el anterior.

He borrado la otra tabla, y he creado la nueva tabla con el prefijo adecuado ya que el resto también lo tienen: phpbb_

Ahora voy al include/constans.php y debajo del comentario de : //Table names

agrego: $consultanombre="SELECT nombre FROM " . ANIME_TABLE;

mi php de la pagina personalizada es:

Código: Seleccionar todo

	$consultanombre="SELECT nombre FROM " . ANIME_TABLE; 
	$resultadonombre = sql_query($consultanombre); 
	$num_resultadosnombre = sql_num_rows($resultadonombre);
	
	for ($y = 0; $y < $num_resultadossid; $y++)
	{
	$template->assign_vars(array(
		'DATO_1' => $resultadonombre["dato1"],
		'DATO_2' => $num_resultadosnombre["dato2"],
	));
	}
pero debo de estar definiendo mal en el include/constans.php pues cuando agrego esa linea, la pagina deja de mostrarse, y se queda entera blanca.

¿como debo definiría si no es así?
URL: http://animeien.com
Plantilla(s) usuada(s): Attriuum
MODs instalados: He instalado varios y no se como mirar cuales instale.
Versión de phpBB: 3.0.10
Servidor: MySQL(i) 5.0.91-log
Si es una actualización desde otra versión: si de la 3.0.6
Si es una conversión desde otro tipo de Foro: No

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 36

Re: Página personalizada con consulta SQL 2

#10

Mensaje por Alorse »

Discúlpame pero es falta de perspicacia tuya si ves como se define cualquiera de las otras tablas, la hubieras definido bien.
Después de // Table names agrega:

Código: Seleccionar todo

define('ANIME_TABLE',			$table_prefix . 'anime');
Y los llamados a la base de datos siguen estando malos, son lo de forma $db->sql_query($sql); y no sql_query($sql); como tú los tienes.
De igual manera en en sitio oficial de phpBB hay documentación sobre como hacer consultas SQL.

Omega100
Asiduo/a
Mensajes: 140
Registrado: 17 Ene 2011, 15:07
Edad: 32

Re: Página personalizada con consulta SQL 2

#11

Mensaje por Omega100 »

Disculpa, pero lo hago así desde el principio, al escribir el post copie lo que quería copiar debajo. Uso esto para definirlo en el constants.

Código: Seleccionar todo

define('ANIME_TABLE',			$table_prefix . 'anime');
Mirando lo que as puesto con lo que ponía eh descubierto que ponía en los dos lado mayúsculas, al quitar mayúsculas ya carga la pagina al menos.
Funciona mucho mejor, pero sigue dando problema, pues el prefijo no parece ponerlo solo.

Se puede ver en: http://www.animeien.com/Animes.php

Constans.php -> // Table names
define('ANIMES_TABLE', $table_prefix . 'animes');


Php:

Código: Seleccionar todo

	
	$consultanombre="SELECT nombre FROM " . _ANIME_TABLE; 
	$resultadonombre = $db->sql_query($consultanombre); 
	$num_resultadosnombre = $db->sql_num_rows($resultadonombre);
	
	for ($y = 0; $y < $num_resultadossid; $y++)
	{
	$template->assign_vars(array(
		'DATO_1' => $resultadonombre["dato1"],
		'DATO_2' => $num_resultadosnombre["dato2"],
	));
	}

	$template->set_filenames(array(
		'body' => 'Animes.html',
	));
La tabla se llama: phpbb_ANIMES
debería llamarse: phpbb_ANIMES_TABLE?

Gracias.
Última edición por Omega100 el 03 Abr 2012, 19:17, editado 1 vez en total.
URL: http://animeien.com
Plantilla(s) usuada(s): Attriuum
MODs instalados: He instalado varios y no se como mirar cuales instale.
Versión de phpBB: 3.0.10
Servidor: MySQL(i) 5.0.91-log
Si es una actualización desde otra versión: si de la 3.0.6
Si es una conversión desde otro tipo de Foro: No

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 36

Re: Página personalizada con consulta SQL 2

#12

Mensaje por Alorse »

Estas llamado mal la tabla, debe ser así $consultanombre = "SELECT nombre FROM " . ANIME_TABLE; sin el
_ que pones la principio [b]_[/b]ANIME_TABLE

Omega100
Asiduo/a
Mensajes: 140
Registrado: 17 Ene 2011, 15:07
Edad: 32

Re: Página personalizada con consulta SQL 2

#13

Mensaje por Omega100 »

Quitado y sigue igual, no adjunta bien el prefijo.

Código: Seleccionar todo

SQL ERROR [ mysqli ]

Table 'db357452799.ANIME_TABLE' doesn't exist [1146]

SQL

SELECT nombre FROM ANIME_TABLE

BACKTRACE

FILE: [ROOT]/includes/db/mysqli.php
LINE: 182
CALL: dbal->sql_error()

FILE: [ROOT]/Animes.php
LINE: 17
CALL: dbal_mysqli->sql_query()
la tabla se llama phpbb_ANIMES
lo de tablet es cosa del phpbb cierto? lo digo por que el resto de tablas tampoco estan terminadas en _tablet, todas son phpbb_nombre
URL: http://animeien.com
Plantilla(s) usuada(s): Attriuum
MODs instalados: He instalado varios y no se como mirar cuales instale.
Versión de phpBB: 3.0.10
Servidor: MySQL(i) 5.0.91-log
Si es una actualización desde otra versión: si de la 3.0.6
Si es una conversión desde otro tipo de Foro: No

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 36

Re: Página personalizada con consulta SQL 2

#14

Mensaje por Alorse »

Entonces no definiste bien la tabla en el archivo constants o la tabla no se llama así (phpbb_anime).

Intenta definiarla en el mismo archivo Anime.php haber que pasa.

Omega100
Asiduo/a
Mensajes: 140
Registrado: 17 Ene 2011, 15:07
Edad: 32

Re: Página personalizada con consulta SQL 2

#15

Mensaje por Omega100 »

Bien, lo quito de Constants y lo pongo en el php de animes, y me sale justamente lo mismo.
Este es ahora mi php:

Código: Seleccionar todo

	define('ANIMES_TABLE',			    $table_prefix . 'animes');
	$consultanombre="SELECT nombre FROM " . ANIME_TABLE; 
	$resultadonombre = $db->sql_query($consultanombre); 
	$num_resultadosnombre = $db->sql_num_rows($resultadonombre);
	
	for ($y = 0; $y < $num_resultadossid; $y++)
	{
	$template->assign_vars(array(
		'DATO_1' => $resultadonombre["dato1"],
		'DATO_2' => $num_resultadosnombre["dato2"],
	));
	}
y aquí mi base de datos por si algo esta mal:
Imagen
URL: http://animeien.com
Plantilla(s) usuada(s): Attriuum
MODs instalados: He instalado varios y no se como mirar cuales instale.
Versión de phpBB: 3.0.10
Servidor: MySQL(i) 5.0.91-log
Si es una actualización desde otra versión: si de la 3.0.6
Si es una conversión desde otro tipo de Foro: No

Cerrado

Volver a “Soporte de MODs”