Beiträge von Stef

    Hey,


    vielen Dank. Hab es nun hinbekommen. :)


    EDIT: Beim Überprüfen ob ein Bild gesendet wurde habe ich nicht die else-Variante genommen, weil der error dann sofort ausgegeben wird nach dem wiederladen der Seite.


    Habe es so umgesetzt :

    PHP
    $files_error = isset($_FILES['bild']['error']) ? $_FILES['bild']['error']  : null;
    
    if ($files_error === 4) {
                    echo '<p class="fehler">Bitte fügen sie ein Bild zum hochladen ein!</p>';
                }

    Hey,


    Jav : Ok. Alles klar. Habe jetzt um den suffix (das suffix ist dann z.b. .jpg, .png, .... ?) zu bestimmen die function exif_imagetype() benutzt. In diese soll der Name der Bilddatei rein. Habe ich nun auch so gemacht :


    PHP
    $name = $_FILES['bild']['name'];
    $datei_endung = exif_imagetype($name);

    Nun kommt aber jedes mal folgende Fehlermeldung :

    Warning: exif_imagetype(turm_schwarz.jpg): failed to open stream: No such file or directory in G:\xampp\htdocs\bilder_upload\bilder_upload.php on line 37

    In dieser Zeile liegt die variable datei_endung. Ok ich denke auch, dass wenn man z.b. mehrer Bilderordner hat (verschiedener Themen, für verschiedene Sachen), dass man den Pfad mit den bilder namen in die db speichert.


    Habe schon nach der Warnung geschaut. Da wird gesagt, dass man den realen Pfad mal mit der function realpath() ermitteln soll. Habe ich jetzt auch gemacht und dies kommt da raus: G:\xampp\htdocs\bilder_upload . Das ist nicht der ordner, den ich als Speicherordner (wo die Bilder rein kommen) angegeben habe. So sollte die Verzichnissstruktur aussehen : G:\xampp\htdocs\bilder_upload\bilder\


    cottton : Mhm... stimmt ja. Danke :)


    Stef

    Hey zusammen,


    ich habe ein Bilderupload erstellt. Funktioniert auch.

    Ein Problem habe ich dennoch. Wenn ich nun überprüfen möchte ob der index bild leer ist kommt nie die Fehlermeldung, obwohl man nix abgesendet hat. Oder es kommt die Fehlermeldung aber diese bleibt dauerhaft bestehen. Ich weiß nich warum das so ist...


    Mein Code:


    Eine weiter Frage habe ich. Was haltet ihr davon wenn man die Dateipfade zu den Bildern in die DB speichert ?


    Gruß,

    Stef

    Hey,


    diese Notiz kommt, wenn die variable nicht definiert ist. Was ich dir vorschlagen würde bei der Variable ist folgendes:

    PHP
    $idimage = isset($_GET['idimage']) ? $_GET['idimage'] : null ;
    // wenn ? dann : sonst

    Dies weist $idimage, wenn kein Bild mit dem Formular über GET gesendet wurde, null zu. Somit ist sie auch definiert, wenn kein Bild gesendet wurde.


    PHP
    while($row = $statement->fetch(PDO::FETCH_BOTH))

    PDO::FETCH_BOTH ? Meintest du nicht PDO::FETCH_OBJ ?


    Bitte berücksichtige das, was cotton geschrieben hat. Dies ist sehr wichtig.


    Stef

    Hey,


    bitte poste deine Scripts in den BB-Codes das nächste Mal.


    Weißt du was du machst ? Scheint nicht so teilsweise.


    In dem <head> tag kommten nur der seitentittel, die verlinkung zu CSS- JS-Dateien, meta tags, style und script rein. Alles andere, was zum Aufbau der Seite gehört in den <body>.


    Zu deinem Problem:


    Es kommt bei dir bestimmt folgender Fehler : Kein Video mit unterstütztem Format und MIME-Type gefunden.


    Ist das Video welches du abspielen willst wirklick vom typ mp4 ?

    Sprichst du den richtigen Ordner und die richtige Datei an?


    Mit dem HTML-Code soll es gehen (getestet) , ändere nur nur die source :


    Gruß,

    Stef

    Hey,


    ja genau so ist.


    Weiters Beispiel:

    CSS
    header#kopfbereich{
                /*Damit sprichst du den header an mit der id kopfbereich*/
            }
    
            #kopfbereich section#kopf_abteil{
                /*Damit sprichst du das section an mit der id kopf_abteil welches innerhalb des header mit id #kopfbereich ist*/
            }
    
            /*usw........*/

    Gruß,

    Stef

    Hey,


    HTML
    <div class="header">
      <h1>Chania</h1>          
    </div>
    CSS
    .header {
        background-color: #9933cc;
        color: #ffffff;
        padding: 15px;
         border: 1px solid black;
    }

    1. Mit diesem CSS-Code sprichst du ja nur das div mit der class header an. Und sagst das der Inhalt von header die textfarbe weiß und ein innenabstand von 15pixel haben soll. Der border und die background color beschränkt sich dabei nur auf das div. Wenn du möchtest das auch h1 ein border hat, musst du h1 individuell ansprechen.



    HTML
    <div class="col-3">    /* Die class 'menu' hier entfernt */
      <ul class="menu">
        <li class="menu">The Flight</li>
        <li class="menu">The City</li>
        <li class="menu">The Island</li>
        <li class="menu">The Food</li>
      </ul>
    </div>
    CSS
    .menu ul {            /* Dieser hat keinen Effekt mehr so. Entfernt man jedoch '.menu' dann funktioniert das wieder. */
        [...]
    }
    .menu li {
        [...]
    }

    2. Warum funktioniert dies nicht ? Schau dir mal den HTML-Aufbau an. Du gibst dem ul die classe menu und tust dann in css nicht dem ul die class menu geben sondern dem div welches aber die class col-3 hat. Bzw. schau mal was da als Kommentar in den /* */ steht.

    Beispiel wie es funktioniert:

    HTML
    <div class="col-3">    
      <ul class="menu">
        <li class="menu">The Flight</li>
        <li class="menu">The City</li>
        <li class="menu">The Island</li>
        <li class="menu">The Food</li>
      </ul>
    </div>
    CSS
    .col-3 ul.menu {    
        background-color: yellow;
        list-style-type: none;
    }
    .menu li {
       color: red;
       display: inline;
    }


    Gruß,

    Stef

    Hey,


    du hast ja 1 externes Formular und 1 internes Formular, das sind ja 2 Formulare.

    Und für jedes Formular brauchst du eine eigene php-datei.


    Dies kann auch sein das es an dem shortcode liegt. Ist das externe Formular auf keine Wordpress seite ?


    Wendest du für beide Formular das gleiche PHP-Script an ?


    Und du brauchst nicht unbedingt bei dem absenden eines Formulares eine neue seite aufzurufen. Du kannst beim <form>-tag das action="" entfernen. Dann ruft es keine weitere seite auf.


    Zitat


    Wie soll ich denn meinen Code aufteilen?

    Du kannst 2 PHP-dateien machen. IM 1sten ist dann z.b. das externe Formular drin und im 2ten das interne Formular.


    Du kannst die Formularauswertung auch mit arrays machen:

    Das ist ein Beispiel wie ich es machen würde, also das php und html in eine datei. Anstatt der array-auswertung kannst du es auch mit if-statements, ... machen


    Stef

    Hey,


    wollte grad eben mir das mal ansehen jedoch kommt folgende Meldung:

    Fehler 403 Zugriff nicht gestattet

    Der Zugriff auf die von Ihnen angeforderte Seite ist nicht erlaubt.


    Mögliche Ursachen für diese Fehlermeldung finden Sie in den easyname FAQ.

    Hey,


    Axel : Ich denke er möchte den Text über das Bild als Textbeschreibung haben.


    @TE : Du kannst wir Axel gesagt hat das Bild über CSS einbauen und den Text dann darüber positionieren. Was man auch machen kann ist Unterhalb des Bildes eine Beschreibung. Ich sehe, dass du anstatt den vorgegebenen Containern in HTML wie z.b. <header>, <main>, <article>, <section>, <aside>, <footer> , einfach nur divs benutzt. <div>-container sollte man nur benutzen wenn die anderen container nicht zum vorhaben passen.


    Ich habe dir mal ein Beispiel erstellt wie ich die Bildbeschreibung machen würde https://jsfiddle.net/mkrth2h9/5/:





    Stef

    Hi,


    Ja das externe formular funktioniert. Das interne nicht.


    Ich denke das dein Problem daran liegt, dass du für 2 Formulare die gleiche Datei aufrufst. Estelle mal bitte für jedes Formular eine eigenes PHP-Skript und ändere dann im code das action="ausführlink".


    Ich benutze pro Formular immer ein eigenes script. Habe nochnie 1 Script für 2 Formulare gehabt. Denn intern ist ja von extern abgegrenzt (nicht das selbe).


    Stef

    Hey,


    es kann nicht sein das mein Beispiel nicht funktioniert.


    Schön das du es nun hinbekommen hast. Ich habe jetzt trotzdem mal ein script geschrieben, so wie ich es dir versucht habe zu erklären:


    Habe da nun auch die Fehlerbehandlung und Filterung der Eingabe welche sehr wichtig ist noch hinzugefügt.


    Stef

    Hey,


    Was du machen könntest ist, dass du die ganzen Bilder in PHP in einem Array tust und bei jedem seitenaufruf diesen Array mischst mit der PHP funktion shuffle();

    Beispielscript:


    Stef

    Hey,


    wenn du Sachen in php ausgibst und diese designen möchtest sollst du die Daten die du durch das Formular übermittelt bekommst zuerst mal in eine variable stecken.


    PHP
    <?php
    
    $vorname = $_GET['vorname'];
    $datum = date("H:i:s");
    
    ?>


    Nun kannst du $_GET['vorname']; in den <p>-Tag aus HTML reinschreiben und diesem p tag eine klasse geben.

    PHP
    <?php
    $vorname = '<p class="ausgabe">' . $_GET['vorname'] . '</p>';
    $datum = '<p class="datum">' . date("H:i:s") . '</p>';
    ?>

    Und nun kannst du diese 2 klassen über css designen.



    Gruß,

    Stef

    Hey,


    ja so gefällt es mir auch deutlich besser. Sieht schon ansprechender aus. Bist du aus der Branche IT was mit HTML5, CSS3 , PHP, Javascript, ... arbeitet ?