Javascript/PHP

  • Themenstarter Themenstarter Sealtuagn
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
S

Sealtuagn

Hoffendlichkann mirjemand helfen....

Also.. ich habe eine Seite, in der der Inhalt einer MySQL-Datenbank ausgelesen werden.
Diese Ergebnisse möchte ich in einem Array in Javascript speichern.

Wie schaff ich das
also die Inhalte der MSQL-Datenkabn die per PHP ausgelesenw rden in einem Array in Javascript speichern.

Ihr würdet mir damit super duper helfen !
 
Am einfachsten scheint mit zu sein, auf php-Seite das Javscript zu erzeugen, welches aus lauter Array-Einträgen besteht.

PHP erzeugt also einen Text der Art
<script type="text/javascript">
<!--
var Eintraege = new Array(12345 );
Eintraege[1] = 'Wert1';
Eintraege[2} = 'Wert2';
...
//-->
</script>
Die Anzahl der Einträge (hier 12345) sowie die einzelnen Werte kannst Du ja php-Seitig erfahren.

Alles klar?

vop
 
Kann ich dann einfach so machen ?
Code:
<script type="text/javascript">
<!--
var Eintrag = new Array(12345 );
While ($erg = mysql_fetch_assoc($sql))
{
var Eintrag[1] = "$erg['inhalt']"M
}
-->

geht das dann so
ich hoffe du weist, was ich meine...
Vielleicht kannst du mir ja einen Beispiel-Code aufschreiben, mit der genau das passieren soll, was er bei mir höchstwarscheinlichnicht machen wird...

Fänd ichsuper nett!
Aber danke schonmal für deine Schnelle ANtwort
 
Nein, so nicht

In php schreibst Du

$Ergebnis = '<script type="text/javascript">';
$Ergebnis .= '<!-- ';
$Ergebnis .= 'var Eintraege = new Array( ' . $AnzahlEintraege . ');';
...
$Zeile=0;
While ($erg = mysql_fetch_assoc($sql))
{
$Zeile += 1;
$Ergebnis .= 'var Eintrag[' . $Zeile .' ] = "' .$erg .'"';
}
$Ergebnis .= '//-->';
$Ergebnis .= '</script>';
...

In $Ergebnis steht dann dein Javascript-Schnipsel.

P.S. Das php ist nur so runtergeschrieben und soll dir eine Idee geben. Das ist kein fertiger Code. Den solltest Du aber selbst hinbekommen, wenn Du mit php arbeitest.

vop
 
Kann ich die Variable $Ergebnis auch irgendwie weglassen?
oder gibts da noch ne andre möglichkeit ?

Undwie wäre das dann richtig ?
$Ergebnis .= 'WarenListe['.$sql_erg_RD_auktion_items['ID'].'] = new Array();';
oder
$Ergebnis .= 'WarenListe['.$sql_erg_RD_auktion_items["ID"].'] = new Array();';
 
Zuletzt bearbeitet von einem Moderator:
Du vermischts hier PHP und Javasript.
$Ergebnis, $Zeile, $erg, $Sql sind Variablen im Namensbereich von PHP

Mit php erzeugst du einen reinen Text (string), der Bestandteil der erzeugten Seite wird und eben den Javascript-Schnipsel enthält.

In diesem Javascript-Schnipsel stehen dann Javascript - Anweisungen
etwa
WarenListe[1]='Buch für Anfänger';
WarenListe[2]='So lerne ich php';
...
Damit die da irgendwann drin stehen, verwendest Du php, um solche Texte zu erstellen

Die mußt du nämlich erst zusammenstecken etwa so:
"WarenListe[" dann der Index dann "]='" dann der Wert dann "'"
Man beachte die verschiedenen Anführungszeichen ' und "

So, nun solltest Du mal ein wenig probieren, Fehler machen und aus denen lernen.

vop
 
Nee, ich frage nur,weil du bei dir $ergebnis .= ' hast, und nicht $ergebnis .= "

Und ich hab noch ne Frage...
wenn ich in html mit <div> arbeite.. wie kann ich dann per JavaScript den Inhalt von div so ändern, das er auch ausgegeben wird.. ?
 
Zuletzt bearbeitet von einem Moderator:
Ich schaff das mit dem übergeben mit php nicht.....
das kann doch nicht so schwer sein....

mein script sieht jetzt so aus:
Code:
#--------JS---------#
$Ergebnis =  '<script type="text/javascript">';
$Ergebnis .= '<!--';
$Ergebnis .= 'var WarenListe = new Array();';

$Ergebnis .= 'WarenListe[0]               = new Array();';
$Ergebnis .= 'WarenListe[0]["URL"]        = "bump.gif";';
$Ergebnis .= 'WarenListe[0]["plus_leben"] = 0;';
$Ergebnis .= 'WarenListe[0]["plus_mana"]  = 0;';
$Ergebnis .= 'WarenListe[0]["offensive"]  = 0;';
$Ergebnis .= 'WarenListe[0]["defensive"]  = 0;';

$Zeile = 0;
While ($sql_erg_RD_auktion_items = mysql_fetch_assoc($erg_RD_auktion_items))
{
$sql_RD_iteminformation = "SELECT * FROM item_list WHERE ID = '".$sql_erg_RD_auktion_items['item_ID']."'";
$erg_RD_iteminformation = mysql_query($sql_RD_iteminformation);
$sql_erg_RD_iteminformation = mysql_fetch_assoc($erg_RD_iteminformation);

$Zeile += 1;
$Ergebnis .= 'WarenListe['.$sql_erg_RD_auktion_items['ID'].']               = new Array();';
$Ergebnis .= 'WarenListe['.$sql_erg_RD_auktion_items['ID'].']["URL"]        = "/game/images/items/'.$sql_erg_RD_iteminformation['pic'].'";';
$Ergebnis .= 'WarenListe['.$sql_erg_RD_auktion_items['ID'].']["plus_leben"] = "'.$sql_erg_RD_iteminformation['plus_lp'].'";';
$Ergebnis .= 'WarenListe['.$sql_erg_RD_auktion_items['ID'].']["plus_mana"]  = "'.$sql_erg_RD_iteminformation['plus_mana'].'";';
$Ergebnis .= 'WarenListe['.$sql_erg_RD_auktion_items['ID'].']["defensive"]  = "'.$sql_erg_RD_iteminformation['defensive'].'";';
$Ergebnis .= 'WarenListe['.$sql_erg_RD_auktion_items['ID'].']["offensive"]  = "'.$sql_erg_RD_iteminformation['offensive'].'";';
}
$Ergebnis .= '//-->';
$Ergebnis .= '</script>';
#--------JS---------#

so.. das ist ber leider 1. nicht in der Datei, wo die Funktion ist und 2. ist die initiierung nach der funktion.
wie könnte ich das richten...
*hilfeee*
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück