Skriptsprachen (PHP, Javascript, etc.) - Forum

Derzeit sind Sie als Gast in unserem Forum aktiv. Für das Schreiben registrieren Sie sich bitte. Unser Forum ist eine Austauschplattform für Webworker zum Kommunizieren, Helfen, Informieren und Hilfe finden. Auf der rechten Seiten finden Sie eine Forenübersicht über alle Bereiche des Webmaster-Forums. Unterhalb finden Sie alle aktuellen Themen.

Diskutieren Sie hier über die serverseitige Skriptsprachen PHP und Python und über dynamische Webseitenerstellung mit Javascript und Ajax.


Oliver H
Beiträge: 99

PN schreiben
Profil ansehen
User ist offline

Problem mit Hochkommata.

Link zur Antwort auf "Problem mit Hochkommata." von Oliver H Oliver H, am Montag den 21.04.2008 um 12:40:52

Hallo.

Ich möchte die Daten von 2 Tabellen in eine Tabelle zusammenwerfen. Dabei gibt es aber ein Problem. Ich habe eine Spalte in der Antworten zu Beiträgen stehen. In diesen Antworten werden hin und wieder Hochkommata benutzt.

An dieser Stelle zickt mein SQL-Skript rum. Habt ihr ne Idee wie ich das umgehen kann?

 
PHP
1
2
3
4
5
6
7
8
9
$result = mysql_query("SELECT Id,Text,Timestamp,AuthorId,ThreadId,ImageId,AllowHtml FROM forumthreadentry ORDER BY Id");
while($row = mysql_fetch_array($result))
{
  $result1 = mysql_query("SELECT Title FROM forumthread WHERE Id='$row[ThreadId]'");
  $row1 = mysql_fetch_aarray($result1);

  // Einfügen
  mysql_query("INSERT INTO forumthreadnew (Id,ThreadId,Title,Text,Timestamp,AuthorId,ImageId,AllowHtml) VALUES ('$row[Id]','$row[ThreadId]','$row1[Title]','$row[Text]','$row[Timestamp]','$row[AuthorId]','$row[ImageId]','$row[AllowHtml]')") or die(mysql_error());
}


David Danier
Beiträge: 1710

PN schreiben
Profil ansehen
User ist offline
Link zur Antwort auf "Problem mit Hochkommata." von David Danier David Danier, am Montag den 21.04.2008 um 12:45:07

Du musst den Text maskieren.
http://docs.php.net/mysql_real_escape_string


Oliver H
Beiträge: 99

PN schreiben
Profil ansehen
User ist offline
Link zur Antwort auf "Problem mit Hochkommata." von Oliver H Oliver H, am Montag den 21.04.2008 um 12:52:53

Wäre das so richtig?

 
PHP
1
2
3
4
5
6
7
8
9
$result = mysql_query("SELECT Id,Text,Timestamp,AuthorId,ThreadId,ImageId,AllowHtml FROM forumthreadentry ORDER BY Id");
while($row = mysql_fetch_assoc($result))
{
  $result1 = mysql_query("SELECT Title FROM forumthread WHERE Id='$row[ThreadId]'");
  $row1 = mysql_fetch_assoc($result1);

  $text = mysql_real_escape_string($row["Text"]);
  mysql_query("INSERT INTO forumthreadnew (Id,ThreadId,Title,Text,Timestamp,AuthorId,ImageId,AllowHtml) VALUES ('$row[Id]','$row[ThreadId]','$row1[Title]','$text','$row[Timestamp]','$row[AuthorId]','$row[ImageId]','$row[AllowHtml]')") or die(mysql_error());
}

// Man ich kann ja gar nix mehr... *heul* Keine Übung mehr...


Benutzer gelöscht
Beiträge: 800

PN schreiben
Profil ansehen
User ist offline
Link zur Antwort auf "Problem mit Hochkommata." von Benutzer gelöscht Benutzer gelöscht, am Montag den 21.04.2008 um 13:34:20

Ja, aber an deiner Stelle würde ich das auf jede Var anwenden.


Oliver H
Beiträge: 99

PN schreiben
Profil ansehen
User ist offline
Link zur Antwort auf "Problem mit Hochkommata." von Oliver H Oliver H, am Montag den 21.04.2008 um 13:55:40

Ja hab den Titel auch vorsichtshalber maskiert. Danke!