Zurück   Flashforum > Flash und Server > Flash und Datenbanken

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-02-2007, 16:16   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 44
von MySql zu Flash

Hallo zusammen,

habe mal wieder ein kleines Problem. Ich versuche mich gerade daran eine MySQL zu füllen und wieder auszulesen. Das füllen der Tabelle klappt auch sehr gut. Aber das Anzeigen der Inhalte in Flash bekomme ich irgendwie net hin.

Habe schon gegooglet wie ein verückter und die Suche hier hat mich leider irgendwie nur mehr irritiert.

Meine Testtabelle besteht aus 3 Feldern 'name', 'email', 'text' ich lade die daten aus flash per loadVars über php in die SQL.
Der Weg zurück ist aber irgendwie für mich gerade ein Problem möchte das z.b. die kompletten Datensätze per
$abfrage = "SELECT * FROM testtabelle"; in mein anzeige_txt feld in flash geladen wird.

Kann mir hier einer helfen DANKE
Quentin-B ist offline   Mit Zitat antworten
Alt 22-02-2007, 20:56   #2 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.326
es gibt keinen direkten weg mySQL<-->swf
es geht nur swf<-->php und php<-->mySQL
(anstatt php geht natürlich auch asp, jsp, perl, usw. usf.)

du kannst deine datenbank auslesen, ok.
zu flash geht es, wenn du in flash diese anforderungen stellst:
XML.load();
bzw.
LoadVars.load();

bzw. sendAndLoad();

LoadVars
http://www.flashforum.de/forum/showt...74#post1389074

aus deinem DB-suchergebnis muss php ein xml generieren, das du dann in flash parsen kannst.
bzw. sinngemäss das selbe mit LoadVars: das DB-suchergebnis in eine &-syntax umschreiben

eigentlich der umgekehrte weg, wie beim befüllen der datenbank - und das hasst du ja schon geschafft, so wie du schreibst.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (22-02-2007 um 20:58 Uhr)
hgseib ist offline   Mit Zitat antworten
Alt 23-02-2007, 14:00   #3 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 44
Hi hgseib

vielen Dank für Deine Antwort. Werde mich mal in deinen Link vertiefen wegen der loadVars Klassen. Den Weg in die MySQL mache ich auch über die loadVars die ich natürlich über PHP an die SQL sende.

Ich danke Dir erst mal werde mich heute abend dran setzten. Melde mich wieder falls ich nicht klar komme.

Grüße
Quentin-B ist offline   Mit Zitat antworten
Alt 23-02-2007, 16:21   #4 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.326
z.b.
$result="";
$i=0;
while ($row=$db->fFetch($res)) // oder wie immer du deine DB ausliest
{ $i++;
$result.="&name".$i."=".$row->name';
$result.="&email".$i."=".$row->email';
$result.="&text".$i."=".$row->text';
}
echo $result."&";
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 23-02-2007, 16:33   #5 (permalink)
no guts no glory
 
Benutzerbild von readme.txt
 
Registriert seit: May 2004
Ort: Nordhorn
Beiträge: 7.998
In diesem Kontext auch sehr zu empfehlen: http://www.amfphp.org/
__________________
Bitte keine Privaten Nachrichten mit Fragen, dazu ist das Forum selbst da. Danke.

'We live in an amazing, amazing world, and it's wasted on the crappiest generation of spoiled idiots.'
readme.txt ist offline   Mit Zitat antworten
Alt 24-02-2007, 23:17   #6 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 44
Nochmal hi

Vielen Dank für Dein Beispiel und jetzt kommt bestimmt ne blöde frage aber

$result=""; (meinst Du das die abfrage zwischen die "" kommt?

while ($row=$db->fFetch($res)) (und wo kommt die $db her den Befehl kapiere ich noch net ganz)

mit dem rest baut man eigentlich eine schleife und verteilt sie unten in die in flash definierten textfelder oder?

Vielen Dank

Gruß
Quentin-B ist offline   Mit Zitat antworten
Alt 25-02-2007, 12:14   #7 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.326
ist nur ein beispiel und deshalb steht da auch ein "..oder wie immer du deine DB ausliest.."

wie auch immer, wenn du bei deiner datenbankabfrage ein oder mehrere ergebnisse erhälst, dann musst du die alle mit &name=inhalt anreinander hängen (dazu das symbolische beispiel) und in flash wieder auseinader nehmen.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 26-02-2007, 17:01   #8 (permalink)
Neuer User
 
Registriert seit: Nov 2006
Beiträge: 44
hi hgseib,

sorry das ich wahrscheinlich schon nerve irgendwie stehe ich voll auf dem schlauch.
Hier mal mein Script ist ein Test der mir das Ergebnis auch direkt im browser anzeigt, habe unten Deine Möglichkeit drangehängt und höchst wahrscheinlich falsch interpretiert.
Hoffe Du verstehst mich nicht falsch möchte hier keine fertigen Scripts bekommen ohne selber zu denken aber irgendwie komme ich gerade trotz glühenden Kopf nicht auf eine passende Lösung.

Kannst ja mal schauen was ich für einen Murks baue.

<?php

include("database.php");

// Abfrage erstellen
$sql = "SELECT * FROM `testtabelle`";

// Abfrage ausfuehren
$testtabelle_query = mysql_query($sql) or die("Abfrage nicht erfolgreich");

// Die Anzahl der Daten auslesen und im Browser unformatiert ausgeben.
//$anzahl = mysql_num_rows($testtabelle_query);
// Die Anzahl der Daten ausgeben per html
//echo "Anzahl der Datensätze: $anzahl" ;

?>
<table cellpadding="1" cellspacing="3" border="1">

<tr>

<td>ID</td>

<td>Name</td>

<td>Email</td>

<td>Text</td>

</tr>
<?php
// Ein Array wird erstellt
while ($adr = mysql_fetch_array($testtabelle_query)){

?>
<?php // Hier werden die Inhalte der Tabelle definiert
?>
<tr>

<td><?=$adr['id']?></td>

<td><?=$adr['name']?></td>

<td><?=$adr['email']?></td>

<td><?=$adr['text']?></td>

</tr>
<?php
}
?>
</table>

// Zusatz um an Flash zu senden
<?php

//???? $db ist das ergebnis der SQL Abfrage
$db = $adr;
//???? $result ist eine vorab leer definierte Variable
$result="";
$i=0;
while ($row=$db->fFetch($res)) // oder wie immer du deine DB ausliest
{ $i++;
$result.="&name".$i."=".$row->name';
$result.="&email".$i."=".$row->email'; ---->// hier bekomme ich fehlermeldung wenn ich script im browser teste???
$result.="&text".$i."=".$row->text';
}
echo $result."&";

?>


Sieht alles ein bissel wirr aus da ich mir immer noch gedankenstützen einbaue da ich das Thema erst angefangen habe zu lernen.

Ich Danke Dir schonmal

Geändert von Quentin-B (26-02-2007 um 17:44 Uhr)
Quentin-B ist offline   Mit Zitat antworten
Alt 26-02-2007, 18:01   #9 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.326
"..while ($row=$db->fFetch($res)) // oder wie immer du deine DB ausliest.."
das ist ein muster geweeheeeeheeesssen - steht doch extra drann und habe es auch schon erklärt !!!!!
da fehlt im musterscript ja auch das connecten, zugriffrechte, einloggen usw. usf. da diskutieren wir ja auch nicht drüber dass das nicht passt, sondern das DU das ergänzen musst.
ich kenne deinen restlichen script nicht. wie sollte ich ein stück programm schreiben können, das ohne anpassen exakt in dein bisheriges script reinpasst? das was ich vorgegeben habe ist ein muster - das du nicht einfach in deinen script reinkopieren kannst. ist nur symbolisch gewesen - manchen verstehen es so besser als wenn man es rein theoretsich umschreibt. ist hier wohl nicht der fall.
ich hoffe das ist jetzt angekommen?

so z.b. liesst du deine DB aus.
while ($adr = mysql_fetch_array($testtabelle_query)){
und sinngemäss musst du das ganzen DB-zeugs zu deiner programmierung passend ergänzen.

die beantwortung deiner ursprünglichen frage war und ist:
"..wie auch immer, wenn du bei deiner datenbankabfrage ein oder mehrere ergebnisse erhälst, dann musst du die alle mit &name=inhalt anreinander hängen (dazu das symbolische beispiel) und in flash wieder auseinander nehmen.."

nach deinem letzten script müsste das etwa so aussehen (natürlich ungetestet):
PHP-Code:
<?php 
include("database.php");
$sql "SELECT * FROM `testtabelle`";
$testtabelle_query mysql_query($sql) or die("Abfrage nicht erfolgreich");
$result="";
$i=0;
if (
mysql_num_rows($testtabelle_query)
{ while (
$adr mysql_fetch_array($testtabelle_query))
  { 
$result.="&id".$i."=".$adr['id'];
    
$result.="&name".$i."=".$adr['name'];
    
$result.="&email".$i."=".$adr['email'];
    
$result.="&text".$i."=".$adr['text'];
    
$i++;
} }
echo 
$result."&";
?>
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de

Geändert von hgseib (26-02-2007 um 18:18 Uhr)
hgseib ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

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



Alle Zeitangaben in WEZ +1. Es ist jetzt 00:31 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele