Sie sind nicht angemeldet.


Jobs im Team gesucht!   Anime Manga News Seasons   Creative Corner Bereich

Lieber Besucher, herzlich willkommen bei: aniMania-Board.de | Anime Manga Forum - Network Worldwide. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

KaZ

Papa Knolle xD

  • »KaZ« ist männlich
  • »KaZ« ist der Autor dieses Themas

Beiträge: 1 285

Wohnort: Kassel

Beruf: Student

Level: 45 [?]

Erfahrungspunkte: 4 590 339

Nächstes Level: 5 107 448

Danksagungen: 206

  • Nachricht senden
  • KaZ

1

Samstag, 20. Juni 2009, 18:06

Offizieller Free-Scripts-Thread

So, ich ma mal nen Thread hier auf, in dem ihr alle euch beteiligen könnt und eure eigenen oder fremde Scripts in php, javascript usw. posten könnt

Bitte immer Copyrights, Quelle etc. mit angeben, falls die Tutorials von irgdnwo her übernommen wurden.
und...

Bitte NUR Scripts posten und keine Fragen. Macht für Fragen bitte einen extra Thread auf. Danke.


Nungut ich fang mal an ;)

Das äußerst nützliche "include script" in PHP (abgewandelte Version von mir, die übrigends auch auf Animania-Zone.de verwendet wird ;) )

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php 
   $dathtm = "PFAD/" . $_GET["page"] . ".htm";
   $datphp = "PFAD/" . $_GET["page"] . ".php";
      if(file_exists($dathtm))
            include $dathtm;
	    else
	          if ($_GET["page"] == "andere_dateien_includen")
		        include "blaa/andere_dateien_includen.php";
			else
			      if(file_exists($datphp))
			            include $datphp;
				    else
				          include "news.php";
?>


Hiermit kann man nun sowohl *.php als auch *.htm dateien, die im PFAD ordner liegen includen. Zweite teil kann irgnoriert werden bis zum else {news.php} was es erlaubt, bei jeder falschen eingabe in der andresszeile eine errorpage zu inlcuden. Somit hat man eine automatische exception mit dabei ;)

  • »NarID« ist männlich

Beiträge: 1 724

Wohnort: Ōsaka

Level: 46 [?]

Erfahrungspunkte: 5 525 855

Nächstes Level: 6 058 010

Danksagungen: 107

  • Nachricht senden

2

Montag, 28. Juni 2010, 14:06

Ich poste dann mal mein eigenes Upload-Script, was relativ einfach gehalten ist, aber alle wichtigen Funktionen hat. Man kann aussuchen, welche Datei-Endungen hochgeladen werden dürfen.
Nach dem Hochladen werden nähere Informationen zur Datei ausgegeben. Auch wird ausgegeben, ob die Datei hochgeladen wurde oder wegen einer unzulässigen Dateiendung der Upload nicht abgeschlossen wurde.

index.php:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
<html>
<head>
<title>Upload</title>
</head>
<body>
<form enctype="multipart/form-data"
action="upload.php" method="post">
<p>Datei: <input name="upfile" type="file" /></p>
<p><input type="submit" value="Hochladen" /></p>
</form>
</body>
</html>


upload.php:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<html>
<head>
<title>Upload</title>
</head>
<body>
<?php
echo "<p>Originaldateiname: "
. $_FILES["upfile"]["name"] . "<br />";
echo "Dateigröße (in Bytes): "
. $_FILES["upfile"]["size"] . "<br />";
echo "Dateityp: "
. $_FILES["upfile"]["type"] . "<br />";
$dname = explode(".",$_FILES["upfile"]["name"]);
$dnamesize = count($dname);
$upfile_ext = $dname[$dnamesize-1];
echo "Dateiendung: " . $upfile_ext . "<br />";
if($_FILES["upfile"]["size"]>0 && $upfile_ext=="png" or $upfile_ext=="jpg" or $upfile_ext=="gif" or $upfile_ext=="bmp" or $upfile_ext=="dib")
{
copy($_FILES["upfile"]["tmp_name"], $_FILES["upfile"]["name"]);
echo "<p>Datei wurde erfolgreich hochgeladen</p>";
}
else
{
echo "<p>Fehler: Datei nicht vorhanden oder falscher Datei-Typ</p>";
}
?>
</body>
</html>


Die hochgeladene Datei kann man im Verzeichnis finden, in der auch beide Dateien sind.
Als momentane Dateieindung habe ich die Wichtigsten Bild-Dateiendungen genommen (PNG, JPG, GIF, BMP und DIB)
Die können aber geändert werden und weitere können auch hinzugefügt werden. Es ist egal, welche Dateieindungen es im Endeffekt sind^^

Zum Schluss poste ich noch Screenshots. Ich habe mal auf CSS-Deklarationen und zusätzlichen Text verzichtet.



  • »ChrisID« ist männlich

Beiträge: 1 724

Wohnort: Ōsaka

Level: 46 [?]

Erfahrungspunkte: 5 525 855

Nächstes Level: 6 058 010

Danksagungen: 107

  • Nachricht senden

3

Donnerstag, 31. Januar 2013, 00:21

Das Upload-Script oben ist mittlerweile stark veraltet xD
Daher hier ein neues:

Upload-Script

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<?php
// constants

define('UPLOAD_FOLDER', 'files/'); // the files will be uploaded to this folder (folder name has to end with a slash (/)). The path to this folder has to be relative to this file
define('DIRECTORY', 'localhost/Sonstiges/Upload/'); // the directory of this file (has to end with a slash (/))

define('MAX_SIZE', 1000000); // in bytes (1000000 Bytes equals 1MB (metric system))
// functions

function checkFileSize() {

    if ($_FILES['upload']['size'] <= MAX_SIZE)
        return true;
    else
        return false;
}

function checkFileType($checkMimeType = true) {

    $allowedFileTypes = array(
        array('fileExtension' => 'png',
            'mimeType' => 'image/png'),
        array('fileExtension' => 'jpg',
            'mimeType' => 'image/jpeg'),
        array('fileExtension' => 'gif',
            'mimeType' => 'image/gif')
    );

    if ($checkMimeType == true) {

        $allowed = false;
        $mimeType = $_FILES['upload']['type'];
        $i = 0;

        foreach ($allowedFileTypes as $value) {

            if ($mimeType == $allowedFileTypes[$i]['mimeType']) {
                $allowed = true;
                break;
            }

            $i++;
        }

        if ($allowed)
            return true;
        else
            return false;
    } else {

        $fileName = $_FILES['upload']['name'];

        if (strstr($_FILES['upload']['name'], '.')) {
            $array = explode('.', $fileName);
            $fileExtension = end($array);

            $allowed = false;
            $i = 0;

            foreach ($allowedFileTypes as $value) {

                if ($fileExtension == $allowedFileTypes[$i]['fileExtension']) {
                    $allowed = true;
                    break;
                }

                $i++;
            }

            if ($allowed)
                return true;
            else
                return false;
        }
    }
}

function moveFile() {

    if (file_exists(UPLOAD_FOLDER . $_FILES['upload']['name'])) {

        $i = 0;

        while (true) {
            if (!file_exists(UPLOAD_FOLDER . $i . $_FILES['upload']['name'])) {
                $fileName = $i . $_FILES['upload']['name'];
                break;
            }
            $i++;
        }
    } else
        $fileName = $_FILES['upload']['name'];

    $moveFile = move_uploaded_file($_FILES['upload']['tmp_name'], UPLOAD_FOLDER . $fileName);

    if (!$moveFile)
        return 'uploadError';
    else
        return $fileName;
}

function uploadFile() {
    if (checkFileType(true)) {
        if (checkFileSize()) {
            return moveFile();
        } else {
            return 'illegalFileSize';
        }
    } else {
        return 'illegalFileType';
    }
}
?>

<!DOCTYPE html>
<html>
    <head>
        <title>Upload</title>
    </head>
    <body>
<?php
if (isset($_FILES['upload'])) {
    $upload = uploadFile();

    if ($upload == 'illegalFileType')
        echo 'Falscher Dateityp';
    else if ($upload == 'illegalFileSize')
        echo 'Die Datei ist zu gro&szlig;';
    else if ($upload == 'uploadError')
        echo 'Es ist ein Fehler beim Upload aufgetreten';
    else {
        $fileName = $upload;

        echo 'Der Upload war erfolgreich. Die URL zu der Datei ist:<br>';
        echo DIRECTORY . UPLOAD_FOLDER . $fileName;
    }
} else {
    ?> 
            <form enctype="multipart/form-data" action="index.php" method="post">
                Datei: <input name="upload" type="file" /><br />
                <input type="submit" value="Upload starten" />
            </form>
    <?php
}
?>
    </body>
</html>

Meine Tests waren bisher erfolgreich, sollten aber dennoch Fehler auftreten, bitte diese per PN an mich =)

Das Script habe ich auch noch mal als Dateianhang hochgeladen: Upload.rar

  • »ChrisID« ist männlich

Beiträge: 1 724

Wohnort: Ōsaka

Level: 46 [?]

Erfahrungspunkte: 5 525 855

Nächstes Level: 6 058 010

Danksagungen: 107

  • Nachricht senden

4

Dienstag, 26. Februar 2013, 22:33

Und wieder ein kleines Script von mir :D

Quellcode

1
2
3
function getYTVidID($url) {
    return substr($url, strpos($url, '=') + 1, 11);
}

Es handelt sich dabei um eine Funktion in PHP, mit der man die ID eines YouTube-Videos durch die Standard-URL des Videos bestimmen kann.
Die Funktion kann u.a. benutzt werden, um auf einer Seite Videos von YT einzubinden, ohne die DataAPI zu benutzen. Die ID muss dann nur noch in den HTML-Code für eingebettete Videos eingefügt werden:

Quellcode

1
2
3
<?php
    echo '<iframe class="player" width="640" height="360" src="http://www.youtube.com/embed/' . $YTVideoID . '" frameborder="0" allowfullscreen></iframe>';
?>

Es hat sich bereits 1 registrierter Benutzer bedankt.

Benutzer die sich bedankten:

KaZaA (27.02.2013)

  • »ChrisID« ist männlich

Beiträge: 1 724

Wohnort: Ōsaka

Level: 46 [?]

Erfahrungspunkte: 5 525 855

Nächstes Level: 6 058 010

Danksagungen: 107

  • Nachricht senden

5

Sonntag, 30. Juni 2013, 00:30

Ich habe vor Kurzem ein Spoiler-Script gesucht, aber nichts gefunden, was meinen Vorstellungen entsprach, daher habe ich selber eines mit Hilfe der jQuery-API geschrieben (ich benutze grundsätzlich jQuery für alles, was ich mit JavaScript mache :D)

Quellcode

HTML

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<!DOCTYPE html>
<html>
    <head>
        <title>Spoiler</title>

        <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>

        <script>
            $(document).ready(function() {
                
                $('.spoiler-head').click(function() {
                    
                    var spoilerHead = $(this);
                    var spoilerBody = $(this).parent().find('.spoiler-body');
                    
                    var openSpoiler = 'Spoiler öffnen';
                    var closeSpoiler = 'Spoiler schließen';
                    
                    spoilerBody.slideToggle('slow', function() {
                        if (spoilerHead.text() == openSpoiler || spoilerHead.text() == closeSpoiler) {
                            if(spoilerBody.css('display') != 'none')
                                spoilerHead.text(closeSpoiler);
                            else
                                spoilerHead.text(openSpoiler);
                        }
                    });
                    
                });
                
            });
        </script>
    </head>
    <body>
        <div class="spoiler-container">
            <div class="spoiler-head">Spoiler öffnen</div>
            <div class="spoiler-body" style="display: none;">
                <p>Hello World!</p>
            </div>
        </div>

        <div class="spoiler-container">
            <div class="spoiler-head">Text</div>
            <div class="spoiler-body">
                <p>Hello World!</p>
            </div>
        </div>
    </body>
</html>

Wenn der Text innerhalb des div-Containers mit der Klasse .spoiler-head (quasi der Spoiler-Name) mit dem String der Variable openSpoiler übereinstimmt, wird der Text beim Öffnen des jeweiligen Spoilers geändert. Ebenso funktioniert es, wenn der Spoiler bereits geöffnet ist, dann wird nur eine Überprüfung mit closeSpoiler durchgeführt.

Man kann zudem auch Spoiler erstellen, die bei Öffnen des Dokuments bereits offen sind. Dazu lässt man einfach das style-Attribut des jeweiligen div-Containers mit der Klasse .spoiler-body weg.

  • »ChrisID« ist männlich

Beiträge: 1 724

Wohnort: Ōsaka

Level: 46 [?]

Erfahrungspunkte: 5 525 855

Nächstes Level: 6 058 010

Danksagungen: 107

  • Nachricht senden

6

Mittwoch, 11. Dezember 2013, 17:52

Für ein aktuelles Projekt hab ich eine kurze Klasse geschrieben, mit der man dynamisch Seiten laden kann, wenn man maskierte URLs verwendet und den Aufruf dann per mod_rewrite an eine PHP-Datei weiterleitet.
Die URLs haben dabei diese Form: http://www.domain.tld/dir/pageName-param1-param2-...-paramN/ . Der wichtige Teil beginnt mit pageName, was die Seite angibt, die aufgerufen werden soll. Mit einem Bindestrich (-) als Trennzeichen können beliebig viele Parameter angehängt werden, diese können dann von den jeweiligen Seiten / Scripts angefragt und verwendet werden.

Die Klasse

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?php

/*
 * ROOT ist das Verzeichnis, in dem die Datei 'index.php' ist
 * Wenn 'index.php' unter 'http://www.domain.tld/dir/subdir/' gespeichert ist,
 *      ist ROOT 'dir/subdir/'
 */
define('ROOT''path');

/*
 * DEFAULT_PAGE ist die Seite, die aufgerufen wird, wenn in der URL
 *      keine Seite angegeben ist
 */
define('DEFAULT_PAGE''index');

class Page {

    private static $_params = array(),
            $_filename '';

    public static function load() {

        $uri filter_input(INPUT_SERVER'REQUEST_URI');

        /*
         * ROOT wird aus der URI entfernt, weil nur die Angaben danach
         *      relevant sind
         */
        $pageData str_replace(ROOT''$uri);

        /*
         * Überprüfung, ob in der URL angegeben worden ist, welche Seite
         *      aufgerufen werden soll.
         * Ist das nicht der Fall, wird DEFAULT_PAGE als Wert dafür gesetzt
         */
        if (!empty($pageData)) {

            /*
             * Aufspalten der Parameter zu einem Array
             * $_params[0] beinhaltet den Wert, mit dem die Seite später
             *      geladen wird
             * Mit der Funktion rtrim() wird der Slash ('/') am Ende des Strings
             *      entfernt, um einen Eintrag am Ende des Arrays mit leerem
             *      Wert zu verhindern
             */
            self::$_params explode('-'rtrim($pageData'/'));
        } else {
            self::$_params[0] = DEFAULT_PAGE;
        }

        self::$_filename self::$_params[0];

        $file 'page/' self::$_filename '.php';

        /*
         * Überprüfung, ob die Datei existiert. Wenn sie nicht existiert, wird
         *      eine 404-Fehlerseite erzeugt.
         * Existiert die Datei, wird sie eingebunden
         */
        if (!file_exists($file)) {
            Redirect::to(404);
        } else {
            require_once $file;
        }
    }

    /*
     * Mit dieser Funktion kann man auf die Parameter zurückgreifen
     */
    public static function getParams() {
        return self::$_params;
    }

    /*
     * Mit dieser Funktion kann man auf den Dateinamen zurückgreifen
     */
    public static function getFilename() {
        return self::$_filename;
    }

}

Thema bewerten