website/Projekte/URLkuerzer1.php

100 lines
5.1 KiB
PHP
Raw Normal View History

2020-10-13 17:11:32 +02:00
<?php
include "../internal/mysql.php";
2020-10-30 10:19:10 +01:00
include "../internal/getGravatar.php";
2020-10-13 17:11:32 +02:00
?>
<!DOCTYPE html>
<html lang="de">
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>URL K&uuml;rzer V1 - Jonas Leder</title>
<link href="/css/style.css" rel="stylesheet">
<link href="/css/normalize.css" rel="stylesheet">
<link href="/css/sourcesanspro.css" rel="stylesheet">
<link href="/css/menue.css" rel="stylesheet">
<script src="https://kit.fontawesome.com/038c6c1f0e.js" crossorigin="anonymous"></script>
2020-12-02 22:38:05 +01:00
<!-- Matomo Image Tracker-->
<img src="https://matomo.jonasled.de/matomo.php?idsite=1&amp;rec=1" style="border:0" alt="" />
<!-- End Matomo -->
2020-10-13 17:11:32 +02:00
</head>
<body>
<header>
<div class="header-wrapper">
<div class="header-homepage color-overlay" data-parallax-depth="20">
<div class="header-description gridContainer content-on-center">
<div class="row header-description-row">
<div class="header-content header-content-centered">
<div class="align-holder">
<h1 class="heading8">URL K&uuml;rzer V1</h1>
<p class="header-subtitle"> </p>
<div class="header-buttons-wrapper"></div>
</div>
</div>
</div>
</div>
</div>
<div class="header-separator header-separator-bottom ">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 100" preserveAspectRatio="none">
<path class="svg-white-bg" d="M737.9,94.7L0,0v100h1000V0L737.9,94.7z"></path>
</svg>
</div>
</div>
<div id="mainMenu" includeHTML="/include/menue.php?page=projekte"></div>
</header>
<div id="content">
<p>Da Google seinen URL kürzer leider einstellt (vgl. <a href="https://developers.googleblog.com/2018/03/transitioning-google-url-shortener.html">https://developers.googleblog.com/2018/03/transitioning-google-url-shortener.html</a> ), habe ich mir das Ziel genommen selber einen schnellen URL kürzer ohne Werbung (wie z.b. <a href="https://adf.ly/">adf.ly</a>) zu schreiben. Zum Einsatz kommt dabei PHP für das Frontend Python für die SQL abfragen und MySQL als Datenbank.</p>
<p>Wenn ihr den Quellcode verwenden wollt müsst ihr in eurem Webserver noch ein Alias konfigurieren. Für Apache würde dieser beispielhaft folgendermaßen lauten:</p>
<p><em>AliasMatch "^/(.*)" "/var/www/url_shorter/index.php"</em></p>
<p>Der Kürzer ist unter <a href="https://kurz.ml">kurz.ml</a> erreichbar.</p>
<p><img src="/img/URL-kuerzer1.png"></p>
<p><strong>Update:</strong> Da das alte Design nicht besonders schön aussah habe ich mich dazu entschlossen ein neues Design zu verwenden, welches jetzt auf <a href="https://getbootstrap.com/">Bootstrap</a> basiert. Das Design ist <a href="https://kurz.ml/design">hier</a> zu finden. Für die Benachrichtigungen unten rechts habe ich das <a href="https://github.com/kamranahmedse/jquery-toast-plugin">jquery-toast-plugin</a> von kamranahmedse verwendet. Desweiteren kann man sich in der neuen Version auch einen Link selber aussuchen. Die Weiterleitung blieb gleich wie vorher, dass heißt die alten links bleiben weiterhin bestehen und werden auch in Zukunft noch funktionieren. Eine weitere Anpassung, welche noch gemacht werden muss ist, dass er files Ordner auf einen anderen (sub)domain ausgelagert werden muss und in der index.php angepasst werden muss.</p><br>
<a href="/files/shorter.zip"><button>Download</button></a>
2020-10-27 14:33:05 +01:00
<h2>Kommentare:</h2>
<?php
$article = basename($_SERVER["SCRIPT_FILENAME"], '.php');
$result = $conn->query("SELECT * FROM comments WHERE article='$article'");
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$name = $row["name"] . "<br>";
$gravatar = get_gravatar($row["email"]);
$content = $row["comment"];
echo(<<<EOF
<h3 class="commentTitle">$name</h3>
<div class="comment">
<img src="$gravatar">
<article class="commentArticle">
<p class="commentText">$content</p>
</article>
</div>
EOF);
}
}
?>
<div id="newComment">
<form action="/newComment.php" method="post">
<label for="name">Name:</label><br>
<input type="text" id="name" name="name"><br><br>
<label for="email">E-Mail: (wird nicht ver&ouml;ffentlicht)</label><br>
<input type="text" id="email" name="email"><br><br>
<label for="comment">Kommentar:</label><br>
<textarea name="comment" id="comment"></textarea><br><br>
<input type="submit" value="Kommentar ver&ouml;ffentlichen"><br>
<p>Mit dem klick auf den obigen Button erkl&auml;ren sie sich mit der <a href="/datenschutzerklaerung.html">Datenschutzerkl&auml;rung</a> einverstanden.</p>
</form>
</div>
2020-10-13 17:11:32 +02:00
</div>
<footer includeHTML="/include/footer.php">
</footer>
<script src="/js/includeHTML.js"></script>
</body>
</html>