Wer Ahnung vom Programmieren hat, muss nicht nach Lücken suchen.
Das Design ist mal richtig schlecht, spricht überhaupt nicht an und deine Arbeitsweise geht mal gar nicht.
Bevor man etwas anfängt schreibt man Konzepte und Dokumentationen. Du kannst nicht einfach auf den flachen Ball los legen zu entwickeln.
Und Erfolg sehe ich da genau so wenig. Werbung für ein Social Network gehört zu Facebook, Google, Apps wie Applike und nicht RT.
Außerdem solltest du es als Unternehmen registrieren, um Erfolg zu haben. Wenn du jetzt behauptest, dass du kein großen Erfolg möchtest, sondern nur einige Nutzer, dann ist es genau so schwachsinnig, da ein Social Network mit 200-300 Usern nichts bringt.
Edit:
Tolles Snippet.. was ich sehe sind nur 4-5 Zeilen. Das ist keine Struktur.
Hier mal ein Beispiel von mir:
<?php
/**
* @author Candan Tombas
*/
namespace Application\Controllers {
use Kitty\System\Patterns\MVC\Controllers\Controller;
use Kitty\System\Utils\Routing\Interfaces\IRoute;
use Kitty\System\Utils\Routing\Route;
use Kitty\System\Utils\Helpers\Redirects\Redirects;
use Kitty\System\Common;
use Kitty\System\Utils\Helpers\OrderTypes\OrderTypes;
use Application\Models\User\UserFactory;
use Application\Models\Article\Article;
use Application\Models\Article\ArticleFactory;
use Application\Models\ArticleView\ArticleViewFactory;
final class ArticleController extends Controller implements IRoute {
public function onCall(Route $route, array $vars) {
$this->redirectBy(Redirects::BETA_USER, 'client');
$userFactory = $this->getControllerParameters()->getModelsManager()->get(UserFactory::class);
$articleFactory = $this->getControllerParameters()->getModelsManager()->get(ArticleFactory::class);
if($route->getData() == 'article') {
$article = $articleFactory->getAll(false, 1, 'timestamp', OrderTypes::DESC);
if($article == null) {
Common::redirect('index');
} else {
$article = $article[0];
$this->articleView($article);
}
$tpl = $this->createView('Article/Article.tpl', 'articleView');
$tpl->article = $article;
$tpl->userFactory = $userFactory;
$tpl->articleFactory = $articleFactory;
$this->displayView($tpl);
} else if($route->getData() == 'articleId') {
$article = $articleFactory->getByColumn('id', $vars['id']);
$this->articleView($article);
$tpl = $this->createView('Article/Article.tpl', 'articleView');
$tpl->article = $article;
$tpl->userFactory = $userFactory;
$tpl->articleFactory = $articleFactory;
$this->displayView($tpl);
}
}
private function articleView(Article $article) {
$articleViewFactory = $this->getControllerParameters()->getModelsManager()->get(ArticleViewFactory::class);
if($article != null && $this->getUser() != null) {
$articleView = $articleViewFactory->getAllByColumns(
['articleid', 'userid'],
[$article->getRow()->id, $this->getUser()->getRow()->id],
['AND'], false, 1
);
if($articleView == null || count($articleView) <= 0) {
$articleViewFactory->_create([
'articleid' => $article->getRow()->id,
'userid' => $this->getUser()->getRow()->id,
'timestamp' => time()
]);
}
}
}
public function getRoutes(): array {
return [
new Route('/community/article', $this, 'article'),
new Route('/article', $this, 'article'),
new Route('/article/{int:id}', $this, 'articleId'),
new Route('/community/article/{int:id}', $this, 'articleId')
];
}
}
}
Alles anzeigen