So funktioniert JustAnswer:
  • Fragen Sie einen Experten
    Tausende Experten in über 200 Kategorien.
  • Erhalten Sie eine professionelle Antwort
    Per E-Mail oder sofortiger Benachrichtigung, während Sie auf unserer Website warten.
    Stellen Sie ggf. weitere Anschlussfragen.
  • 100%ige Zufriedenheit garantiert
    Bewerten Sie die erhaltene Antwort.
Stellen Sie Ihre Frage an Tronic.
Tronic
Tronic, IT-Specialist
Kategorie: Computer
Zufriedene Kunden: 2398
Erfahrung:  Elektroniker und EDV-Service
31581453
Geben Sie Ihre Frage in der Kategorie Computer hier ein
Tronic ist jetzt online.

Ich habe eine MYSQL Tabelle an eine Access-DB verkn pft und

Kundenfrage

Ich habe eine MYSQL Tabelle an eine Access-DB verknüpft und die Daten aus der Access-Tabelle mittels VBA-Code in die SQL Tabelle eingelesen.Alle Daten lassen sich danach einwandfrei in einem HTML-Form darstellen,nur die Daten aus einem Memo-Feld der Access-Tabelle weigern sich strikt.Ich habe sie bereits in einer $var und kann sie mittels ECHO auch in der reinen PHP-Seite ausgeben,sobald ich die $var aber an JavaScript übergebe um sie in eine Textarea zu schreiben tut sich nichts mehr.Was ist der Grund?,was mache ich falsch? , was muß ich beachten?
mfG K.Spangenberg
Gepostet: vor 5 Jahren.
Kategorie: Computer
Experte:  IT-Fachinformatiker hat geantwortet vor 5 Jahren.
Hallo,

das könnte daran liegen das Sie in MySQL den falschen DAtentyp benutzen VARCHAR(n) sollte eigentlich funktioneiren versuchen Sie es aber mal mit den MySQL-Datentyp LONTEXT.

Das nächste Problem ist u.U. das die Textarea wie sie von Browsern benutzt wird eine strikte nicht überschreitbare Grenze an max. Zeichen haben.

Benutzen Sie Access als Dateneingabe und MySQL/PHP als Ausgabe? Welcher Art von Daten werden denn im Memo abgelegt?

Gruss Günter
Kunde: hat geantwortet vor 5 Jahren.
Hallo Günter,
leider vergaß ich oben,daß ich LONGTEXT auch schon probiert hatte.Die Daten wurden in einer Access-DB mittels Access Formular eingegeben.In dem Memo-Feld stehen alle möglichen Angaben, Datum , Zeiten andere Texte z.B. Absprachen,aber nie mehr als 2000 Zeichen.Sie sind eigentlich das Herzstück der DB.Da es sich um zig-tausend Datensätze handelt(vorher nicht absehbar) und Access langsam Schwierigkeiten mit der Verwaltung(Geschwindigkeit) bekam,hatte ich mich entschlossen vollständig auf MYSQL umzustellen und habe jeden Datensatz einzeln in die Tabellen einlesen lassen.Die Ausgabe erfolgt jetzt über HTML-Forms und auch die Neuanlage und das Bearbeiten durch das Personal.Eigentümlicher Weise werden die Neueinträge in dieses Feld akzeptiert und können problemlos wieder eingelesen werden.
mfG.Klaus
Experte:  IT-Fachinformatiker hat geantwortet vor 5 Jahren.
Hallo Klaus,

ich frage mich gerade: Warum steigen Sie nicht komplett auf MySQL und PHP um statt MS Access dazwischen zu halten? Das würde Ihnen enorme Arbeit ersparen zudem wären die Daten überall und immer verfügbar. Die Kehrseiite: Die Daten sind nur offline verfügbar, wenn man zuvor einen SQL-Dump o.ä macht und dann kommt noch die Frage auf, wie sensibel diese Daten eigentlich sind.

Es liest sich aber so, als gingen Sie schon in diese Richtung. Access und MySQL passen offen gesagt nicht zusammen es gibt zu viele technische unlösbnare Probleme vom Refresh bis hin zu Datentypkonvertierungen die wie bei Ihnen nicht funktionieren. Für MS Access ist der MS SQL-Server die eindeutig bessere Lösung. Wenn Sie mir kurz erklären könnten, was die DB eigentlich machen soll könnten wir vielleicht ein passendes Konzept ausarbeiten.

LG Günter
Kunde: hat geantwortet vor 5 Jahren.
Hallo Günter, es liest sich nicht nur so, ich bin bereits komplett umgestiegen.Ich habe mir einen eigenen Internetserver aufgestellt,allerdings nur betriebsintern mit OPEN VPN und die Datenbank ist MYSQL, Ein- und Ausgabe HTML mit PHP und JS.Die Daten habe ich nur über die ODBC Verknüpfung rübergeschaufelt und Access hängt jetzt überhaupt nicht mehr drann.Ich werde noch wahnsinnig, daß ich ausgerechnet dieses eine Feld (in Access Memo, in MySql LONGTEXT) nicht in das Textarea einlesen kann.Nach der sql-Abfrage kann ich den Inhalt dieses Feldes in eine $data
einlesen,den Inhalt der Variablen mit echo $data; wieder ausgeben(in der *.php),übergebe ich die $data mit echo an JS und will sie über document.getElementById('proba').value=werte; in das Feld einfügen kommt einfach nix wieder raus.Kopiere ich den INhalt bei der Echo-Ausgabe in eine $-Variable geht das,d.h. wird der gleiche Text ausgegeben.Es funktioniert auch beim Einpflegen neuer Datensätze mit und über das Textareafeld.Tausende von INformationen müssen noch immer in der alten Access-DB nachgelesen werden.mfG Klaus
Experte:  IT-Fachinformatiker hat geantwortet vor 5 Jahren.
Hallo Klaus,

also versuchen Sie einmal sich von dem Memo zu trennen ich habe in 15 Jahren diesen Datentyp nicht einmal benötigt. Sie sollten das Design in der Tat verändern was dieses Feld angeht und es auf einige Textfelder aufteilen. Man sollte erwarten, das es mit 2000 Zeichen klappt. Heir wäre ein Tipp wie man die max. Zeichen festlegen kann:

http://www.it-academy.cc/article/1475/Javascript:+maximale+Laenge+fuer+TextareaInhalt.html

Könnte als Workaround dienen. Ansonsten würde ich es wirklich aufteilen. Sie können auch so die Sachen ausgeben:

<?
$text = "Hallo Welt!";
echo "<textarea>$text</textarea>";
?>

Ich denke, wenn es nur die Textarea ist sollte man das doch wohl hinbekommen. Sie können ohne hin auf MySQL ganz umsatteln dort gibt es BIGTEXT, LONGTEXT usw.

LG Günter

Ähnliche Fragen in der Kategorie Computer