Prob MySQL Datenbank PHP Newssystem

Dieses Thema Prob MySQL Datenbank PHP Newssystem im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von safer, 12. Feb. 2003.

Thema: Prob MySQL Datenbank PHP Newssystem Moin, ich habe ein Newssystem, das auf einer MySQL Datenbank läuft. In einem Password geschützen Bereich können...

  1. Moin,
    ich habe ein Newssystem, das auf einer MySQL Datenbank läuft.
    In einem Password geschützen Bereich können Nachrichten von jedem Browser Online gestellt werden.

    Alles läuft prima. Jetzt möchte ich aber zusätzlich noch Bilder in die News Integrieren. Upload in ein Verzeichnis mit PHP ist kein Problem. Wie stelle ich es an, das mir die Bilder auch angezeigt werden?
    Der geschriebene Text wird korrekt dargestell, das problem liegt darin, das ich ja den Pfad zum Bild in die News schreiben muß.
    Beispiel<img src=http://www.xxx.de/bild.gif>
    Logischerweise wird der Pfad in den News angezeigt. Hier sollte aber das Bild erscheinen.
    Kann man irgendwie beim Aufruf der News mit einem Trick den Link so umwandeln, das das Bild angezeigt wird?

    gruß
    safer
     
  2. Hi

    Das liegt entweder daran wie du den Text umänderst bevor du ihn in die DB schreibst, oder was du beim auslesen wieder damit machst.
    Hast du vielleicht sowas wie htmlspecialchars() drin oder striptags().
    Probier statt dessen mal beim speichern die Daten nur durch myslq_escape_string() umwandeln zu lassen.

    Gruß, Michael
     
  3. Moin Michael (PCDReitz),
    mein problem ist auch noch, das ich erst vor kurzem mit PHP MySQL angefangen habe.
    Würde es dir etwas ausmachen einmal über das komplette Newssystem drüber zu schauen? (Hoffe, das das jetzt nicht zuviel verlangt ist.) ;)
    Ich würde Dir das ganze Ding mal als ZIP Datei rübermailen.
    Vorausgesetz Du gibst dein OK.

    Über eine evtl. Vergütung könnte man (wir) natürlich auch reden.

    dank
    und gruß
    safer
     
  4. Auch, wenn ich nicht Michael bin, aber das ist wohl nicht nötig. Wenn Du einfach den Teil des Quelltext postest, der die Daten aus der Tabelle ausliest, wirst Du hier sicherlich auch so geholfen.

    T-Low
     
  5. Moin,
    Dieser Teil liest aus:
    <?php
    require(dbase.inc);

    $id=get_global(id);
    $inhalt=;
    $headline=;
    if($id!=){
    $sql=SELECT DATE_FORMAT(datum, '%d.%m.%Y'), id, headline, html_text, online FROM news WHERE id= . $id;
    $result=mysql_query($sql);
    $row=mysql_fetch_array ($result);
    $inhalt=$row[html_text];
    $headline=$row[headline];
    }
    ?>

    Das ist die benötigte dbase.inc
    <?php
    $dbserver=localhost;
    $dblogin=;
    $dbpassword=;
    $dbname=news;

    $db_connection=@mysql_pconnect($dbserver, $dblogin, $dbpassword);
    if(! $db_connection){
    die(Fehler bei der Verbindung zur Datenbank!);
    }
    if (! mysql_select_db($dbname)) {
    die(Fehler bei der Auswahl der Datenbank.);
    }

    function get_global($var_name){
    if(!isset($GLOBALS[$var_name])){
    return ();
    } else {
    return ($GLOBALS[$var_name]);
    }
    }

    function remove_designtags($html_tags){
    return preg_replace(/DESIGNTIMESP[^>]+>/,>,$html_tags);
    }
    ?>

    Diese PHP Datei speichert in die DB:
    <?php
    require(dbase.inc);

    $sql = SELECT * FROM news;

    $result=mysql_query($sql);

    $id=get_global(id);

    //str_replace(\, ',$inhalt )

    $text= remove_designtags(get_global(html_text));
    $text=str_replace(', ?,$text );

    if($datum==){
    $datum=1.1.2002;
    }
    $sql=;

    if($id == ){
    // no id: insert new entry
    $sql=INSERT INTO news (html_text, headline, datum) VALUES(' . $text . ', ' . $headline . ', ' . $datum . ');
    } else {
    // update existing entry
    $sql=UPDATE news SET html_text=' . $text . ', headline=' . $headline . ', datum=' . $datum . ' WHERE ID= . $id;
    }

    $t=mysql_query($sql);
    ?>
    <!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN>
    <html>
    <head>
    <title>News</title>
    <link rel=stylesheet type=text/css href=news.css>
    </head>
    <body>
    <h4> <a href=news.php>Zurück</a></h4>
    <h4> Datum: <?= $datum ?></h4>
    <h4> Headline: <?= $headline ?></h4>
    <h4> Folgender Text wurde in die Datenbank eingetragen:</h4>
    <?= $text ?>
    </body>
    </html>


    gruß
    safer
     
  6. Hi

    Ersetz mal
    $text= remove_designtags(get_global(html_text));
    $text=str_replace(', ?,$text );

    durch
    $text = mysql_escape_string(get_global(html_text));

    Sollte es dann gehen, kann man es noch feiner überarbeiten, aber erstmal sehen ob da der Fehler liegt.

    Gruß, Michael
     
  7. Moin,
    habe jetzt die Änderung vorgenommen.
    Sieht alles etwas besser aus. Ich habe jetzt wenigstens schon mal den Platzhalter für das Bild. (Kasten mit rotem Kreuz).

    Der HTMLCode sieht jetzt folgendermaßen aus:
    <IMG src=\\\\http://www.xxx.de/bild.gif\\\'\>

    So wie es aussieht, werden die Hochkommas noch maskiert.

    gruß
    safer
     
Die Seite wird geladen...

Prob MySQL Datenbank PHP Newssystem - Ähnliche Themen

Forum Datum
Versionsprobleme mit der "mysql.dll" (32 und 64bit) Windows 7 Forum 28. Juni 2016
Problem mit MySQL Abfrage Windows XP Forum 11. Dez. 2010
Probleme mit MySQL 5.0 Windows XP Forum 26. Mai 2010
Probleme mit Arbeitsspeicher Server / MYSQL Datenbank Windows Server-Systeme 3. Nov. 2009
Problem auf MySQL 5 zurück zu greifen Webentwicklung, Hosting & Programmierung 30. März 2007