AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein mysql_ecape_string! Warum stürzt das Ding dabei ab?
Thema durchsuchen
Ansicht
Themen-Optionen

mysql_ecape_string! Warum stürzt das Ding dabei ab?

Ein Thema von emsländer · begonnen am 28. Jun 2005 · letzter Beitrag vom 28. Jun 2005
Antwort Antwort
Benutzerbild von emsländer
emsländer

Registriert seit: 21. Aug 2004
Ort: Lengerich
658 Beiträge
 
RAD-Studio 2009 Ent
 
#1

Re: Warum stürzt das Ding dabei ab?

  Alt 28. Jun 2005, 11:55
Jetzt bekomme ich einen mysql-Error - ich kotz gleich (Info: ich nutze mysql.pas)

ich poste jetzt hier mal den Code:

Delphi-Quellcode:

// _spoccon ist eine globale Variable - der Verbindungsdescriptor

function Tform1.append_satz (dateiname : string) : boolean;
var img_pfad, thumb_pfad, dateibody, bildnr, extension : string;
    stmp : string;
    query : pchar;
    datei : pchar;
    img : string;
    thumb : string;
    img_fs : tfilestream;
    img_sstream : Tstringstream;
    thumb_fs : Tfilestream;
    thumb_sstream : Tstringstream;
    errorcode : integer;

begin
  datei := Strlower(pchar(dateiname));
  dateiname := AnsiToUtf8(datei);
  img_pfad := label1.caption + '\'+ dateiname;
  thumb_pfad := label2.caption + '\'+ dateiname;
  img_fs := TFilestream.Create(img_pfad, fmopenread);
  img_sstream := Tstringstream.Create('');
  try
    img_fs.position := 0;
    img_sStream.CopyFrom(img_fs,img_fs.size);
    img_sStream.Position := 0;
    img := escapestring(img_ssTream.DataString);
  finally
    freeandnil(img_fs);
    freeandnil(img_sStream);
  end;
  thumb_fs := TFilestream.Create(thumb_pfad, fmopenread);
  thumb_sstream := Tstringstream.Create('');
  try
    thumb_fs.position := 0;
    thumb_sStream.CopyFrom(thumb_fs,thumb_fs.size);
    thumb_sStream.Position := 0;
    thumb := escapestring(thumb_ssTream.DataString);
  finally
    freeandnil(thumb_fs);
    freeandnil(thumb_sStream);
  end;

  extension := ExtractFileExt(dateiname);
  dateibody := stringreplace(dateiname, extension, '', [rfReplaceALL]);
  bildnr := StringReplace(dateibody, 'img_', '', [rfReplaceALL]);

  stmp := 'INSERT INTO BILDER (img_nr, thumb, bild, galerie, fsk) VALUES (';
  stmp := stmp + '"' + thumb + '", ';
  stmp := stmp + '"' + img + '", ';
  stmp := stmp + '"' + bildnr + '", ';
  stmp := stmp + '"01", ';
  stmp := stmp + '"J")';

  query := PCHAR(stmp);
  errorcode := mysql_real_query(_spoccon, query, Length(query));
  stmp := mysql_error(_spoccon);
// showmessage(stmp);
end;

function Tform1.escapestring({const} str: String): String;
var i: integer;
    tgt: string;

begin
  SetLength(tgt, Length(str) * 4);
  try
    i := mysql_real_escape_string(_spoccon, pchar(tgt), pchar(str), Length(str));
  except
    on E:Exception do
    showmessage('Fehler: '+e.message);
  end;
  result := tgt;
end;

Vielleich sehen die Kollegen hier jetzt ein wenig klarer

Und vielen Dank im Vorraus

Gruss

EL

[edit=alcaeus]code- durch delphi-Tags ersetzt. Mfg, alcaeus[/edit]


Narben am Körper sind ein Zeichen dafür, das man gelebt hat.
Narben auf der Seele sind ein Zeichen dafür, das man geliebt hat.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz