Ankündigung

Einklappen
Keine Ankündigung bisher.

externes/nachträgliches bestichworten von Daten in einer DB

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Lennart
    hat ein Thema erstellt externes/nachträgliches bestichworten von Daten in einer DB.

    externes/nachträgliches bestichworten von Daten in einer DB

    Hallo liebe Leute.

    Ich hoffe, dass es dieses Problem nicht anderweitg in diesem Forum aufzufinden ist. Ich habe es so detailiert zumindest noch nicht finden können.

    Ich schildere euch mal meine momentane Lage.

    Ich habe bei PhpMyAdmin eine ganz normale Datenbank mit Tabellen erstellt, wo ich Fotos abgespeichert/hochgeladen habe.

    Jetzt möchte ich gerne, dass ich mit einem Befehl die Bilder wieder auslesen kann (das habe ich auch hinbekommen), aber auch gleichzeitig neu bestichworten kann.

    Es soll wie folgt aussehen.
    Es fängt mit der ID an. Ich gebe in ein Formular eine (ID) Nummer ein, welche mir das Bild mit der Nummer ausgeben soll. Dann soll das Bild erscheinen mit folgenden Punkten:

    Titel des Bildes
    Fotograf
    Kategorie
    Stichworte.

    Ziel ist es, mit einer einfachen Eingabe in ein Formluar leicht Bilder nach zubestichworten/ändern.

    Ich hoffe, dass ich mich deutlich ausgedrückt habe.

    Würde mich über eure Hilfe sehr freuen!

    Mfg Lennart

  • Lennart
    antwortet
    Erst einmal DANKE an ALLE.

    @MaiKaY
    Sorry. Die Signatur ist groß genug Deinen Tipp teste ich.

    @Asipak
    Danke für den Link. Den werde ich mir genau ansehen.

    Einen Kommentar schreiben:


  • MaiKaY
    antwortet
    Liegt vllt daran, das du in deinen Input Feldern
    PHP-Code:
    value="<?php if (!empty($zeile['foto_id'])) echo $zeile['foto_id']; ?>"
    anstatt
    PHP-Code:
    value="<?php if (!empty($foto_id)) echo $foto_id?>"
    schreiben musst?

    Ansonsten liest du ja deine $_POST-Variablen aus und nicht das, was du aus deiner DB geholt hast...


    PS: Wie groß soll ich denn noch meine Signatur andeuten? >.<

    Einen Kommentar schreiben:


  • Asipak
    antwortet
    Dann such' dir ein gutes Tutorial und lerne den Umgang mit MySQL: Quakenet/#php Tutorial - de - MySQL / Zugriff über PHP .

    Einen Kommentar schreiben:


  • Lennart
    antwortet
    Hallo (nochmal) MaiKaY,

    da bin ich aber reingefallen. Var_dump() und so...

    Aber OK. Das mit dem UPDATE Statement ist mir fast klar, aber ich scheitere ja schon vorher. Damit habe ich ja noch nicht meine Daten aus der DB in die Formularfelder ausgelesen???

    Einen Kommentar schreiben:


  • haemoglobin
    antwortet
    Zitat von Lennart Beitrag anzeigen
    Hallo MaiKaY,

    das ist sicher der Tipp, der das Ganze zum Laufen bringt. Aber ich bin offengestanden noch etwas zu "Grün", um sofort zu schnallen, wo ich dieses var_dump() in meinen Code einsetzen muss.
    Das var_dump() ist seine Signatur.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Was für ein var_dump? Schau Dir doch erstmal ein paar Tutorials zu php & mysql an. Alles, was Du brauchst, kommt in nahezu jedem Tutorial vor. 1. Daten aus der DB holen 2. Daten + Formular anzeigen 3. Formular entgegen nehmen 4. Datensatz _UPDATE_n

    Einen Kommentar schreiben:


  • MaiKaY
    antwortet
    Du fängst deine Daten in der "action" ab und führst dann ein UPDATE-Statement auf deine Datenbank Zeile aus.
    UPDATE - Tutorial

    Einen Kommentar schreiben:


  • Lennart
    antwortet
    Hallo MaiKaY,

    das ist sicher der Tipp, der das Ganze zum Laufen bringt. Aber ich bin offengestanden noch etwas zu "Grün", um sofort zu schnallen, wo ich dieses var_dump() in meinen Code einsetzen muss.

    Einen Kommentar schreiben:


  • MaiKaY
    antwortet
    Zitat von MaiKaY Beitrag anzeigen
    Was spricht gegen ein UPDATE-Statement?

    Einen Kommentar schreiben:


  • Lennart
    antwortet
    Hallo Flor1an,

    ich vermute einmal, dass die Lösung relativ banal ist, aber ich komme partout nicht darauf. Mein Ziel ist es, nach Eingabe der foto_id alle dazugehörigen Daten aus der DB in Formularfelder auslesen zu können, um diese dann in einem zweiten Step eventuell zu aktualisieren oder zu vervollständigen (insbesondere die Stichworte zu einem Bild).

    Mein Code ist zu Testzwecken (noch) so angelegt, dass ich das Ergebnis mit allen gewünschten Daten per echo angezeigt bekomme. Aber leider erscheinen die Daten nun einmal nicht in den Formularfeldern. Und da fehlt eben der alles entscheidende Tipp.

    Hier einmal der Code:
    Code:
    <?php
    
    error_reporting(E_ALL);
    
    	// In appvars.php ist die maximale Dateigrösse gespeichert
    	require_once('appvars.php');
    	
    	// In verbvars.php sind die Verbindungsparameter hinterlegt
    	require_once('verbvars.php');
    	
    	// In imagespfad.php ist das Ziel für die Bilder festgelegt
    	require_once('imagespfad.php');
    		
    	if (isset($_POST['submit'])) {	
    	$foto_id = $_POST['foto_id'];
    
     
      // Mit Datenbank verbinden 
      $db = mysqli_connect(DB_HOST, DB_BENUTZER, DB_PASSWORT, DB_NAME);
      mysqli_set_charset($db, "utf8"); 
      
      // Die Bild-Daten aus der Datenbank abrufen
      $sql = "SELECT * FROM bilder WHERE foto_id = '$foto_id'";
      $daten = mysqli_query($db, $sql);
      $i = 0;
      // Die Daten durchlaufen und als HTML formatieren
      echo '<table>';
      while ($zeile = mysqli_fetch_array($daten)) { 
        // Die Bild-Daten anzeigen
        if ($i == 0) {
          echo '<tr><td colspan="2" class="stichwortleiste">Sie haben nach Foto_ID: ' .
               $zeile['foto_id'] . ' gesucht' . '</td></tr>';          
        }  	
        echo '<tr><td class="eintrag">';
        echo '<strong>Foto_id:</strong> ' . $zeile['foto_id'] . '<br />';	
    	echo '<strong>Titel:</strong> ' . $zeile['titel'] . '<br />';
        echo '<strong>Stichworte:</strong> ' . $zeile['stichworte'] . '<br />';
    	echo '<strong>bild:</strong> ' . $zeile['bild'] . '<br />';
    
    	
        if (is_file(GW_IMAGESPFAD . $zeile['bild']) && filesize( GW_IMAGESPFAD . $zeile['bild']) > 0) {
          echo '<td><img class="db_image" src="' . GW_IMAGESPFAD . $zeile['bild'] . '" alt="Bild" /></td></tr>';
        }
        else {
          echo '<td><img src="images/unbelegt.gif" alt="Bild nicht gefunden" /></td></tr>';
        }
        $i++;
      }
      echo '</table>';
    
      mysqli_close($db);
      
      }  
    ?>
    	<form id="commentForm" enctype="multipart/form-data" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    		<input type="hidden" name="MAX_FILE_SIZE" value="65536" />	  
    		<label for="foto_id">Foto_ID:</label>
    			<input name="foto_id" id="foto_id" value="<?php if (!empty($foto_id)) echo $foto_id; ?>" /><br />
    		<label for="titel">Titel:</label>
    			<input name="titel" id="titel" value="<?php if (!empty($titel)) echo $titel; ?>" /><br />
    		<label for="stichworte">Stichworte:</label>
    			<input name="stichworte" id="stichworte" value="<?php if (!empty($stichworte)) echo $stichworte; ?>" /><br />
    		<label for="bild">Bild:</label>
    			<input name="bild" id="bild" value="<?php if (!empty($bild)) echo $bild; ?>" /><br />
    		
    	  <input type="submit" value="Bild laden" name="submit" />
    	</form>

    Einen Kommentar schreiben:


  • Flor1an
    antwortet
    Wo hackt es denn? Hast du überhaupt schon mal angefangen? Eigentlich ist dein Vorhaben nichts besonderes. Daten aus der Datenbank auslesen, in einem Formular neue Daten eintragen und diese wieder in die Datenbank speichern.

    Einen Kommentar schreiben:


  • MaiKaY
    antwortet
    Was spricht gegen ein UPDATE-Statement?

    Einen Kommentar schreiben:

Lädt...
X