Phpost

Versión completa: (Mod) Preguntas frecuentes administrables
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola de nuevo a todos, aquí ando tratando de familiarizarme nuevamente con el script así que les comparto otro mod. 
Consiste en lo que dice el titulo, preguntas frecuentes administrables, las cuales se agregan y eliminan desde la admin! y luego se muestran en /pages/preguntasfrecuentes/ como muestro a continuación: 

[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]

[img]Registrate o inicia tu sesión para ver este contenido[/img]



-> Comencemos con la instalación:
->  En c.admin.php buscamos:
 
Código PHP:
/*
    getNoticias()
    */ 


-> Arriba colocamos:
 
Código PHP:
    /*
    Preguntas Frecuentes Administrables
        -> by airkpo@solucionesinformaticas    
    */
    
        //get pregunta!
        
function getPregunta()
        {
            global 
$tsCore;
            
$ctid $tsCore->setSecure($_GET['ctid']);
            
$query db_exec(array(_FILE_,_LINE_), 'query''SELECT pregunta_id, pregunta_box, respuesta_box FROM p_preguntas WHERE pregunta_id = \'' . (int)$ctid '\' ORDER BY pregunta_id  LIMIT 1');
            
$data result_array($query);
            return 
$data;
        }
        
        
//mostrar todas las preguntas
        
function getAllPreguntas()
        {
            global 
$tsCore;
            
$max 8// MAXIMO A MOSTRAR
            
$limit $tsCore->setPageLimit($maxtrue);        
        
            
//PAGINAS NUEVAS
            
$query db_exec(array(__FILE____LINE__), 'query''SELECT COUNT(*) FROM p_preguntas WHERE pregunta_id > \'0\'');
            list(
$total) = db_exec('fetch_row'$query);

            
$data['pages'] = $tsCore->pageIndex($tsCore->settings['url'] . "/admin/preguntas/?o=" .
            
$_GET['o'] . "&m=" $_GET['m'] . ""$_GET['s'], $total$max);
            
//SELECT
            
$query db_exec(array(__FILE____LINE__), 'query'"SELECT pregunta_id, pregunta_box, respuesta_box FROM p_preguntas ORDER BY pregunta_id LIMIT $limit");
            
$data['data'] = result_array($query); 
            return 
$data;
        }
        
        
//agregar preguntas 
        
function addPregunta()
        {
            global 
$tsCore;
            
$c = array(
                
'pregunta_box' => $tsCore->setSecure($tsCore->parseBadWords($_POST['pregunta_box'])),
                
'respuesta_box' => $tsCore->setSecure($tsCore->parseBadWords($_POST['respuesta_box'])),
            );
            
            
//No dejar en blanco espacios
            
if (empty($c['pregunta_box']))
            return 
'Debes ingresar una pregunta';
                if (empty(
$c['respuesta_box']))
            return 
'Debes ingresar una respuesta';

            
//Insert
            
if (db_exec(array(__FILE____LINE__), 'query''INSERT INTO `p_preguntas` (`pregunta_box`, `respuesta_box`) VALUES (\'' $c['pregunta_box'] . '\',  \'' $c['respuesta_box'] . '\')')) return true;
            else exit( 
show_error('Error al ejecutar la consulta de la línea '.__LINE__.' de '.__FILE__.'.''db') );
        }
        
        
//eliminar pregunta
        
function delPregunta()
        {
            global 
$tsCore;
            
$p_id $_GET['pid'];
            if (!
db_exec('num_rows'db_exec(array(__FILE____LINE__), 'query''SELECT `pregunta_id` FROM `p_preguntas` WHERE `pregunta_id` = \'' . (int)$p_id '\' LIMIT 1')))
            {
                return 
'El id ingresado no existe.';
            }
            
db_exec(array(__FILE____LINE__), 'query''DELETE FROM `p_preguntas` WHERE `pregunta_id` = \'' . (int)$p_id '\'');
        } 

-> Ahora en admin.php buscamos:
 
Código PHP:
        
    
// POSTS 

-> Arriba colocamos:
 
Código PHP:
    //Preguntas y respuestas BY airkpo@solucionesinformaticas
    
} elseif($action == preguntas){
        if(!
$act) {
            
$smarty->assign("tsAllPreguntas"$tsAdmin->getAllPreguntas());
            
$smarty->assign("tsPreguntas"$tsAdmin->getPregunta());
        }
        elseif(
$act == 'borrar'){
             if(
$tsAdmin->delPregunta()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/preguntas?borrar=true');
        }
        elseif(
$act == 'agregar'){
        if(!empty(
$_POST['save'])){
            
$save $tsAdmin->addPregunta();
            if(
$save == 1){
                
$tsCore->redirectTo($tsCore->settings['url'].'/admin/preguntas?save=true');
            }else {
                
$smarty->assign("tsError",$save); 
                }
        }
        } 


-> Ahora en t.admin.tpl buscamos:
 
Código PHP:
{elseif $tsAction == 'afs'}
                                {include 
file='admin_mods/m.admin_afiliados.tpl'

-> Debajo colocamos:
 
Código PHP:
                                {elseif $tsAction == 'preguntas'}
                                {include 
file='admin_mods/m.admin_preguntas.tpl'

-> Ahora en m.admin_sidemenu.tpl buscamos:
 
Código PHP:
<li id="a_ads"><span class="cat-title"><a href="{$tsConfig.url}/admin/ads">Publicidad</a></span></li

-> Debajo colocamos:
 
Código PHP:
                                        <li id="a_cats"><span class="cat-title"><a href="{$tsConfig.url}/admin/preguntas">Preguntas Frecuentes</a></span></li


-> Ahora en t.pages.tpl buscamos:
 
Código PHP:
{include file='modules/m.pages_chat.tpl'

-> Debajo colocamos:
 
Código PHP:
                {elseif $tsAction == 'preguntasfrecuentes'}
                {include 
file='modules/m.page_preguntasfrecuentes.tpl} 

-> Ahora en main_footer.tpl buscamos:
 
Código PHP:
<a href="{$tsConfig.url}/pages/chat/">Chat</a> - 

-> Debajo colocamos:
 
Código PHP:
        <a href="{$tsConfig.url}/pages/preguntasfrecuentes/">Preguntas Frecuentes</a> - 

-> Ahora realizamos las siguientes consultas:
 
Código PHP:
CREATE TABLE IF NOT EXISTS `p_preguntas` (
`
pregunta_idint(11NOT NULL AUTO_INCREMENT,
  `
pregunta_boxvarchar(120NOT NULL,
  `
respuesta_boxvarchar(320NOT NULL,
PRIMARY KEY (`pregunta_id`)  
ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=

-> Subimos y remplazamos estos archivos y listo:

http://Registrate o inicia tu sesión par... contenido
 
<--------------------------------------------->
Eso seria todo amigos cualquier consulta la pueden dejar en los comentarios, creo que no me olvide de nada, gracias por pasar de ante mano. Saludos!
 
Gracias
Gracias
Buen mod, gracias
(10-16-2022, 08:29 AM)cloby escribió: [ -> ]Gracias
 
(10-16-2022, 08:30 AM)AlexT23 escribió: [ -> ]Gracias
 
(10-16-2022, 08:33 AM)Absol escribió: [ -> ]Buen mod, gracias


Gracias a ustedes por pasar!
Gracias