Autor |
Nachricht |
AndiN
Threadersteller
Dabei seit: 31.05.2005
Ort: -
Alter: 41
Geschlecht:
|
Verfasst Fr 09.05.2008 14:11
Titel AJAX-Frage |
|
|
Hallo zusammen,
ich bin derzeit noch völliger AJAX-Noob. Das muss sich ändern.
Infos zu meinem Problem:
Ich habe 2 Selectfelder (A und B) in welche ich DB-Einträge aus zwei verschiedenen SQL-Spalten reinlade.
DB-Aufbau:
Spalte A | Spalte B
-----------|-----------------------
eintrag 1 | Apfel Birne Zitrone
eintrag 2 | Banane
eintrag 3 | Kirsche Pflaume
Ausgabe:
Selectfeld A
eintrag 1
eintrag 2
eintrag 3
Selectfeld B (multiselect)
Apfel
Banane
Kirsche
Pflaume
Zitrone
Folgende Aufgabenstellungen möchte ich jetzt mit AJAX lösen:
1) Wenn ich im Selectfeld A einen Eintrag markiere, dann soll - ohne Reload der Seite (deshalb eben mit AJAX) - die Einträge im Selectfeld B markiert werden welche im jeweiligen Eintrag im DB-Feld der Spalte B dem DB-Feld A zugeordnet sind.
D.h. Wenn ich "eintrag 1" anklicke sollen im Selectfeld B "Apfel" "Birne" und "Zitrone" selectiert werden.
2) Das ganze soll auch andersrum funktionieren.
D.h. Wenn ich im Selectfeld A "Birne" markiere dann soll "Apfel" und "Zitrone" im Selectfeld A markiert werden sowie "eintrag 1" im Selectfeld B.
Das Abspeichern kriege ich dann wohl ohne euch hin.
Vielen Dank im Vorraus für eure Hilfe.
|
|
|
|
|
rob
Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht:
|
Verfasst Fr 09.05.2008 22:21
Titel
|
|
|
Hab jetzt keine Zeit, dein Posting richtig zu lesen...
Zitat: | ich bin derzeit noch völliger AJAX-Noob. Das muss sich ändern. |
Dann wird dich folgendes sicher interessieren.
Galileo Computing bietet in seiner Openbook-Section das Buch JavaScript und AJAX - Das umfassende Handbuch von Christian Wenz zum kostenlosen Online-lesen an. Oder als Download (ZIP-Datei ca. 9,4 MB)
|
|
|
|
|
Anzeige
|
|
|
AndiN
Threadersteller
Dabei seit: 31.05.2005
Ort: -
Alter: 41
Geschlecht:
|
Verfasst Sa 10.05.2008 00:23
Titel
|
|
|
Danke... aber... also irgendwie vermisse ich das Kapital "AJAX & SQL".
Genau das brauche ich eigentlich.
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
|
|
|
|
AndiN
Threadersteller
Dabei seit: 31.05.2005
Ort: -
Alter: 41
Geschlecht:
|
Verfasst Sa 10.05.2008 01:29
Titel
|
|
|
m hat geschrieben: | Ich verstehe leider nicht so wirklich was genau du vorhast, vermute aber das Ajax hier nicht notwendig ist. |
Ich habe folgendes vor:
1) Ich lese zwei SQL-Spalten in zwei Selectfelder ein
2) Ich klicke auf einen Eintrag im Selectfeld 1 und dann soll er mir die Einträge im Selectfeld 2 selectieren die in der SQL-DB miteinander verknüpft sind.
Bspl.:
Spalte 1 | Spalte 2
----------|------------------------------
Auto | Kolben, Scheibe, Benzin
Fahrrad | Lenker, Klingel
Wenn ich jetzt im Selectfeld 1 auf Auto klicke, dann sollen im Selectfeld 2 die Einträge "Kolben", "Scheibe" und "Benzin" selektiert sein. Die Einträge "Lenker" sowie "Klingel" sollen nicht selektiert sein. Wennich im Selectfeld "Fahrrad" wähle ist es genau umgekehrt.
Da er nicht wissen kann was ich auswähle muss ich quasi die SQL-Abfrage "Welcher Werte stehen bei 'Auto' in der Spalte 2 drin" mit AJAX lösen da ich sonst entweder im Vorraus sämtliche möglichen Abfragen machen muss und diese zwischenspeichern oder die Seite neu laden muss.
Zuletzt bearbeitet von AndiN am Sa 10.05.2008 01:31, insgesamt 1-mal bearbeitet
|
|
|
|
|
AndiN
Threadersteller
Dabei seit: 31.05.2005
Ort: -
Alter: 41
Geschlecht:
|
Verfasst Sa 10.05.2008 02:50
Titel
|
|
|
Ich bin denke ich gaaaanz nah dran.
Wenn ich derzeit auf den Eintrag vom Selectfeld 1 klicke werden jedoch leider nicht die dazugehörigen Einträge im Selectfeld 2 selectiert sondern das Selectfeld 2 wird leer angezeigt.
Anbei meine beiden Dateien:
Formular
Code: |
<script language="javascript" type="text/javascript">
<!--
function zuordnung()
{
try {
req = window.XMLHttpRequest?new XMLHttpRequest():
new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
//Kein AJAX Support
}
req.onreadystatechange = handleResponse;
id = document.getElementById('stichwortnew').value;
req.open('get','func.php?s='+id,true);
req.send(null);
}
function handleResponse()
{
if ((req.readyState == 4) && (req.status == 200))
{
document.getElementById('stichwortalt').innerHTML = req.responseText;
}
}
//-->
</script>
<?php include ("connect.inc.php"); ?>
<form name="stichwortform" enctype="multipart/form-data">
<select name="stichwortalt" size="31" multiple class="text" style="width:246px;">
<?php
$sql = mysql_connect($host_porta,$user_porta,$pword_porta);
mysql_select_db($db_porta,$sql);
$connect = @mysql_query("SELECT stichwort FROM stichwoerter_alt ORDER BY stichwort");
while($val = mysql_fetch_object($connect))
{
$Heilverfahren = $val -> stichwort;
?>
<option value="<?php echo $Heilverfahren; ?>"><?php echo $Heilverfahren; ?></option>
<?php
}
?>
</select>
<select name="stichwortnew" size="30" onChange="zuordnung();">
<?php
$sql3 = mysql_connect($host_porta,$user_porta,$pword_porta);
mysql_select_db($db_porta,$sql3);
$connect3 = @mysql_query("SELECT id,stichwort FROM stichwoerter ORDER BY stichwort");
while($val3 = mysql_fetch_object($connect3))
{
$IDsw = $val3 -> id;
$swortneu = $val3 -> stichwort;
?>
<option value="<?php echo $IDsw; ?>"><?php echo $swortneu; ?></option>
<?php
}
?>
</select>
</form>
|
func.php
Code: |
<?php
include ("connect.inc.php");
$sql = mysql_connect($host_porta,$user_porta,$pword_porta);
mysql_select_db($db_porta,$sql);
$connect = @mysql_query("SELECT alte_stichwoerter FROM stichwoerter WHERE id = ".$s."");
while($val = mysql_fetch_object($connect))
{
$stichw = $val -> alte_stichwoerter;
}
$array_stichw = explode("|||",$stichw);
echo '<select name="stichwortalt" size="31" multiple class="text" style="width:246px;">';
$sql = mysql_connect($host_porta,$user_porta,$pword_porta);
mysql_select_db($db_porta,$sql);
$connect = @mysql_query("SELECT stichwort FROM stichwoerter_alt ORDER BY stichwort");
while($val = mysql_fetch_object($connect))
{
if(array_search($val,$array_stichw) == FALSE)
{
echo '<option value="'.$val.'">'.$val.'</option>';
}
else
{
echo '<option value="'.$val.'" selected>'.$val.'</option>';
}
}
echo '</select>';
?>
|
Findet jemand den Fehler?
Zuletzt bearbeitet von AndiN am Sa 10.05.2008 02:53, insgesamt 4-mal bearbeitet
|
|
|
|
|
AndiN
Threadersteller
Dabei seit: 31.05.2005
Ort: -
Alter: 41
Geschlecht:
|
Verfasst Fr 16.05.2008 00:03
Titel
|
|
|
Fehler gefunden. Läuft jetzt.
Thema beendet.
|
|
|
|
|
xBe
Dabei seit: 04.06.2006
Ort: Mönchengladbach
Alter: 34
Geschlecht:
|
Verfasst Fr 16.05.2008 00:28
Titel
|
|
|
AndiN hat geschrieben: | Fehler gefunden. Läuft jetzt.
Thema beendet. |
Wenn du nun noch reinschreibst was der Fehler war, dann können wir in Zukunft doppelte Themen vermeiden.
xBe
|
|
|
|
|
|
|
|
Ähnliche Themen |
[Ajax] Prototype Funktion Ajax.Updater - Brauche Hilfe
AJAX
AJAX] Formulare
jquery php und ajax
Wie Aufwändig ist AJAX?
AJAX Seitenaufruf
|
|