Foros del Web » Programando para Internet » PHP »

Problema con los includes en mi web

Estas en el tema de Problema con los includes en mi web en el foro de PHP en Foros del Web. Hola soy nuevo en el foro. Estoy haciendo un proyecto web personal. Resulta que por decirlo de algun modo, me he cansado de Wordpress y ...
  #1 (permalink)  
Antiguo 08/02/2013, 09:14
 
Fecha de Ingreso: febrero-2013
Mensajes: 3
Antigüedad: 11 años, 1 mes
Puntos: 0
Mensaje Problema con los includes en mi web

Hola soy nuevo en el foro. Estoy haciendo un proyecto web personal.
Resulta que por decirlo de algun modo, me he cansado de Wordpress y he decido hacer mi propio portal a mi manera....donde entre ellas pueda incluir noticias de un modo similar como lo hace wordpress u otros CMS.
Soy programador desde hace muchos años, pero más enfocado al desarrollo de aplicaciones. Hasta ahora de web, solo he chapuceado código donde modificas pequeñas cosas para que funcionen a tu gusto, por lo que demuestro que no soy un experto desarrollador web. De ahi que en parte quiera montar mi propio script, para que aparte de hacerlo a mi manera, me sirva para aprender sobre el desarrollo web.
Realmente mi proyecto web, es mi propio porfolio online.

Explico como esta montado mi proyecto web y luego explico mi problema...

Mi proyecto web esta montado de la siguiente manera:

/--
-admin (directorio admin, para el panel admin de la web)
-admin.php
-adminComments.php
-adminPosts.php
-adminWorks.php
-adminProjects.php
-header-admin.php
-footer-admin.php
-sidebar-admin.php
-includes (directorio donde incluyo archivos que usare mas a menudo)
-classes (directorio donde almaceno mis propias clases)
-Post.php
-PostDAL.php
-config (para almenar archivos relativos a la configuración del portal)
-config.php
-connect.php
-css (para los archivos .css)
-images (para las imagenes del portal)
-js (para los archivos .js)
-libExt (donde almaceno archivos o librerias externas)
-uploads (directorio donde el unico usuario, yo el admin suba los ficheros)
-404.php
-about.php (estos son los archivos del frontend, o mejor dicho que se veran cara a visitantes del portal)
-blog.php
-contact.php
-footer.php
-header.php
-index.php
-projects.php
-sidebar.php
-works.php

El problemas que tengo es el siguiente:

Siguiendo este tutorial, () he creado el forntend del portal y no he tendio ningun problema, pero a la hora de trabajar con el backend, me genera problemas.

Resulta que en el archivo blog.php que es donde me lista los post que hay en la base de datos, no me da ningun problema haciendo uso de la clase Post y PostDAL, de post.php y postDAL.php respectivamente.
Pero cuando intento listar los posts que hay en la base de datos en el panel admin, me genera problemas con los includes.... voy a copiar y pegar los siguientes archivos: Post.php, PostDAL.php, blog.php y connect.php y adminPosts.php. Y en las lineas de codigo os marcare en negrita onde posiblemente tenga los conflictos. En el archiv blog.php que marcaré las lineas de codigo que funcionan y que en adminPosts.php deberian estar funcionando. El problema esta en que dependiendo de como incluya los archivos mediante las url, o me falla en blog.php y funciona en adminPosts.php o a la inversa me funciona en blog.php y falla en adminPosts.php.
La configuración que os paso esta en que falla en el archivo blog.php, donde como os he explicado antes, si cambio los includes o require me dejaria de funcionar el archivo adminPost.php y fallaria el blog.php

Responderé a este mensaje escribiendo el contenido de los archivos
PostDAL.php
Post.php
blog.php
connect.php

ESPERO QUE ME PODAIS AYUDAR, porque llego un par de dias loco con esto.

Gracias y un cordial saludo a todos...
  #2 (permalink)  
Antiguo 08/02/2013, 09:16
 
Fecha de Ingreso: febrero-2013
Mensajes: 3
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Problema con los includes en mi web

PostDAL.php

<?php

/**
* Configuration Class of own web
* @author Javier Escartin
*/
//include_once 'includes/config/connect.php';
include("../includes/config/connect.php");
//include 'includes/config/config.php';


class PostDAL{

public function get_posts_from_blog()
{
global $db;
//$db = new DB('DB_USER', 'DB_PASSWORD', 'DB_NAME', 'DB_HOST');
//$db->quick_connect(DB_USER, DB_PASSWORD, DB_NAME, DB_HOST);
$resultPosts = $db->get_results("SELECT * FROM posts");
$index = 0;
$listAllPosts;
foreach($resultPosts as $resultPost)
{
$post = new Post();
$post->setIdPost($resultPost->Id);
$post->setIdUser($resultPost->Id_user);
$post->setTitle($resultPost->Title);
$post->setAuthor($resultPost->Author);
$post->setContent($resultPost->Content);
$post->setDateCreated($resultPost->Date_created);
$post->setDateModificated($resultPost->Date_modificated);
$post->setDatePublished($resultPost->Date_published);
$post->setExcerpt($resultPost->Excerpt);
$post->setThumbnail($resultPost->Thumbnail);
$post->setThumbnailTitle($resultPost->Thumbnail_Title);
$post->setCommentCount($resultPost->Comment_count);
$post->setPublished($resultPost->Published);

$listAllPosts[$index] = $post;
$index++;
}
return $listAllPosts;
}

public function get_posts_from_admin()
{
global $db;

$resultPosts = $db->get_results("SELECT * FROM posts");
$index = 0;
$listAllPosts;
foreach($resultPosts as $resultPost)
{
$post = new Post();
$post->setIdPost($resultPost->Id);
$post->setTitle($resultPost->Title);
$post->setAuthor($resultPost->Author);
$post->setDateCreated($resultPost->Date_created);
$post->setDateModificated($resultPost->Date_modificated);
$post->setDatePublished($resultPost->Date_published);
$post->setExcerpt($resultPost->Excerpt);
$post->setThumbnail($resultPost->Thumbnail);
$post->setCommentCount($resultPost->Comment_count);
$post->setPublished($resultPost->Published);

$listAllPosts[$index] = $post;
$index++;
}
return $listAllPosts;
}

public function create_new_post(&$postObj)
{
global $db;
$idUser = $postObj->getIdUser();
$title = $postObj->getTitle();
$author = $postObj->getAuthor();
$content = $postObj->getContent();
$dateCreated = $postObj->getDateCreated();
$dateModificated = $postObj->getDateModificated();
$datePublished = $postObj->getDatePublished();
$dateExcerpt = $postObj->getDateExcerpt();
$thumbnail = $postObj->getThumbnail();
$thumbnailTitle = $postObj->getThumbnailTitle();
$published = $postObj->getPublished();

$query = "INSERT INTO posts VALUES (null, )";
$db->query($query);
}
}
?>
Post.php
<?php

/**
* Class of definition POST type
* @author Javier Escartin
*/

class Post{
private $idPost;
private $idUser;
private $author;
private $title;
private $content;
private $date_created;
private $date_modificated;
private $date_published;
private $excerpt;
private $comment_count;
private $thumbnail;
private $thumbnailTitle;
private $published;
//GETTERS
public function getIdPost(){return $this->idPost;}
public function getIdUser(){return $this->idUser;}
public function getAuthor(){return $this->author;}
public function getTitle(){return $this->title;}
public function getContent(){return $this->content;}
public function getDateModificated(){return $this->date_modificated;}
public function getDateCreated(){return $this->date_created;}
public function getDatePublished(){return $this->date_published;}
public function getExcerpt(){return $this->excerpt;}
public function getCommentCount(){return $this->comment_count;}
public function getThumbnail(){return $this->thumbnail;}
public function getThumbnailTitle(){return $this->thumbnailTitle;}
public function getPublised(){return $this->published;}
//SETTERS
public function setIdPost($idPost){$this->idPost = $idPost;}
public function setIdUser($idUser){$this->idUser = $idUser;}
public function setAuthor($author){$this->author = $author;}
public function setTitle($title){$this->title = $title;}
public function setContent($content){$this->content = $content;}
public function setDateModificated($date_modificated){$this->date_modificated = $date_modificated;}
public function setDateCreated($date_created){$this->date_created = $date_created;}
public function setDatePublished($date_published){$this->date_published = $date_published;}
public function setExcerpt($excerpt){$this->excerpt = $excerpt;}
public function setCommentCount($comment_count){$this->comment_count = $comment_count;}
public function setThumbnail($thumbnail){$this->thumbnail = $thumbnail;}
public function setThumbnailTitle($thumbnailTitle){$this->thumbnailTitle = $thumbnailTitle;}
public function setPublished($published){$this->published = $published;}
}
?>
blog.php
<?php
require 'header.php';
require_once 'includes/classes/Post.php';
require_once 'includes/classes/PostDAL.php';


?>
<div id="bodyPage">
<div id="page-bgtop">
<div id="page-bgbtm">
<div id="content">
<?php
$postDAL = new PostDAL();
$listPosts = $postDAL->get_posts_from_blog();

for($c=0; $c<sizeof($listPosts); $c++)
{
$post = new Post();
$post = $listPosts[$c];
?>
<div class="post">
<h2 class="title"><a href="#"><?php echo $post->getTitle(); ?> </a></h2>
<p class="meta">Publicado en <?php echo $post->getDatePublished(); ?>
<a href="#" class="comments">Commentarios <?php echo $post->getCommentCount(); ?></a> &nbsp;&bull;&nbsp; <a href="#" class="permalink">Seguir leyendo...</a></p>
<div class="entry">
<p>
<img src="uploads/<?php $post->getThumbnail(); ?>" width="140" height="140" alt="<?php $post->getThumbnailTitle(); ?>" class="alignleft border" />
<?php echo $post->getExcerpt(); ?>
</p>
</div>
</div>
<?php } ?>
<div style="clear: both;">&nbsp;</div>
</div>
<!-- end #content -->
<?php require 'sidebar.php'; ?>
<?php require 'footer.php'; ?>
connect.php
<?php
include_once "../includes/libExt/ezSQL/shared/ez_sql_core.php";
include_once "../includes/libExt/ezSQL/mysql/ez_sql_mysql.php";
require_once '../includes/config/config.php';


// Initialise database object and establish a connection
// at the same time - db_user / db_password / db_name / db_host
$db = new ezSQL_mysql('root', '', 'dbje', 'localhost');
?>
  #3 (permalink)  
Antiguo 08/02/2013, 09:18
 
Fecha de Ingreso: febrero-2013
Mensajes: 3
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Problema con los includes en mi web

adminPosts.php
<?php

require 'header-admin.php';
require("../includes/classes/Post.php");
require("../includes/classes/PostDAL.php");

$numTotalAllPost = '0';
//$query = "SELECT * FROM posts";

?>
<div class="container-fluid">
<div class="row-fluid">
<?php
include ('sidebar-admin.php');
sidebarAdmin("sidebarAdmin-posts");
?>
<div class="span10">
<form action="">
<div class="row-fluid"> <!--/row-->
<h4>
<img src="http://www.forosdelweb.com/f18/includes/images/admin/icons/iconAdmin-posts.png"> Posts
<button type="button" class="buttonAddImage">
<a href="admin-posts-addNew.php">Add New</a>
</button>
</h4>
</div><!--/row-->

<div class="row-fluid"> <!--/row-->
<a href="#">Alls </a>(<?php echo $numTotalAllPost; ?>) |
<a href="#">Published </a>(<?php echo $numTotalAllPost; ?>) |
<a href="#">Drafts </a>(<?php echo $numTotalAllPost; ?>) |
<a href="#">Trash </a>(<?php echo $numTotalAllPost; ?>)
<div style="float:right">
Search: <input class="inputSearchAdmin" type="search" name="search"><input class="inputButton" type="submit">
</div>
</div><!--/row-->

<div class="row-fluid"> <!--/row FILTER-->
<div style="float:left">
<select name="actions" class="selectFilter">
<option value="volvo" selected>Edit</option>
<option value="saab">Delete</option>
</select>
<input class="inputButton" type="button" value="Apply">
</div>

<div style="float:left">
<select name="dates" style="width:130px" class="selectFilter">
<option value="volvo" selected>Show all dates</option>
<option value="saab">Delete</option>
</select>
<input class="inputButton" type="button" value="Filter">
</div>

<div style="float:right">
<input type="image" src="../includes/images/admin/icons/iconList.png">
<input type="image" src="../includes/images/admin/icons/iconListShow.png">
</div>
</div><!--/row FILTER-->

<div class="row-fluid">
<table class="table">
<thead>
<tr>
<th></th>
<th>id</th>
<th>author</th>
<th>Title</th>
<th>Excerpt</th>
<th>Nº Comments</th>
<th>DATE</th>
<th>Thumbnail</th>
<th>ThumbnailTitle</th>
</tr>
</thead>
<tbody>
<?php
$postDAL = new PostDAL();
$listPosts = $postDAL->get_posts_from_blog();

for($c=0; $c<sizeof($listPosts); $c++)
{
$post = new Post();
$post = $listPosts[$c];
?>
<tr>
<td></td>
<td><?php echo $post->getIdPost(); ?></td>
<td>Rammohan </td>
<td>Prueba 1</td>
<td>Esto es la pruena mumero 1 del primer post que hago.</td>
<td>4</td>
<td>10 Mar 2013<br>Published</td>
<td>/uploads/posts/imagePost1.png</td>
<td>imagePost1</td>
</tr>
<?php } ?>
</tbody>
</table>
</div><!--/row-->
<div class="row-fluid">

</div><!--/row-->
</form>
</div><!--/span-->
</div><!--/row-->

<hr>

<footer>
<p>&copy; Company 2012</p>
</footer>

</div><!--/.fluid-container-->
<?php
/*include ('sidebar-admin.php');
sidebarAdmin("sidebarAdmin-posts");
$numTotalAllPost = '0';
?>
<div class="span9">
<div id="contentAdmin">
<div class="span-Total">
<h4>
<img src="http://www.forosdelweb.com/f18/includes/images/admin/icons/iconAdmin-posts.png"> Posts
<button type="button" class="buttonAddImage">
<a href="admin-posts-addNew.php">Add New</a>
</button>
</h4>

<div class="row1">
<div class="span6-Total">
Alls <?php echo $numTotalAllPost; ?> |
Title
<input type="text" name="title" size="120">
</div>
<div class="span5-Total">
Buscar
<input type="text" name="title" size="120">
</div>
</div>

<div class="row3">
<div class="spanFull-Total">

</div>
</div>
</div>
</div>
</div>*/
?>
<!-- end #contentAdmin -->
<div style="clear: both;">&nbsp;</div>
<?php require 'footer-admin.php'; ?>

En el archivo blog.php me explota en las primeras lineas donde llama a PostDAL.php, y el explorador me indica lo siguiente:

Warning: include(../includes/config/connect.php): failed to open stream: No such file or directory in C:\xampp\htdocs\javierescartin.com\includes\classe s\PostDAL.php on line 9

Warning: include(): Failed opening '../includes/config/connect.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\javierescartin.com\includes\classe s\PostDAL.php on line 9

Fatal error: Call to a member function get_results() on a non-object in C:\xampp\htdocs\javierescartin.com\includes\classe s\PostDAL.php on line 19

Haciendo referencia a estas lineas....
//include_once 'includes/config/connect.php';
include("../includes/config/connect.php");
//include 'includes/config/config.php';

Etiquetas: includes
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 07:52.