PSD-Tutorials.de
Forum für Design, Fotografie & Bildbearbeitung
Tutkit
Agentur
Hilfe
Kontakt
Start
Forum
Aktuelles
Besonderer Inhalt
Foren durchsuchen
Tutorials
News
Anmelden
Kostenlos registrieren
Aktuelles
Suche
Suche
Nur Titel durchsuchen
Von:
Menü
Anmelden
Kostenlos registrieren
App installieren
Installieren
JavaScript ist deaktiviert. Für eine bessere Darstellung aktiviere bitte JavaScript in deinem Browser, bevor du fortfährst.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen
alternativen Browser
verwenden.
Antworten auf deine Fragen:
Neues Thema erstellen
Start
Forum
Sonstiges
Webdesign, Webentwicklung & Programmierung
PHP, Javascript, jQuery, Ajax, nodeJS, MySQL...
SQL Abfrage innerhalb JavaScript mit Kriterium
Beitrag
<blockquote data-quote="didi01" data-source="post: 2685589" data-attributes="member: 38281"><p>Hallo,</p><p></p><p>sorry das ich mich erst jetzt melde, aber beim dem schönen Wetter am Wochenende war ich nicht am PC.</p><p>Ich versuche jetzt mal etwas genauer zu beschreiben.</p><p>Ich habe eine PHP Datei in der ich an einer Stelle einen Button habe, der mit onClick eine JavaScript Funktion aufruft.</p><p>[HTML]input type="button" name="schreiben" value="+" onclick="createInput()">[/HTML]</p><p>wenn man auf den Button clickt, wird die die JavaScript Funktion aufgerufen die sich in der PHP Datei befindet.</p><p></p><p>[CODE]<script type="text/javascript"></p><p>function createInput() {</p><p><?php</p><p> $sql="SELECT * FROM behaelter_typ WHERE status = 1 ORDER BY standard DESC, bebezeichnung";</p><p> $res=odbc_exec($dbcon,$sql);</p><p> ?></p><p></p><p> var zahl = document.FORMULAR.kontrollfeld.value;</p><p> var kd_check = document.FORMULAR.kd_check.value;</p><p></p><p> if(zahl=="") {</p><p> zahl=1;</p><p> }</p><p></p><p> var TD1textfeld1 = document.createElement('input');</p><p> TD1textfeld1.type = 'text';</p><p> TD1textfeld1.name = 'we_anzahlbehaelter[' + zahl + ']';</p><p> TD1textfeld1.size = '5';</p><p> TD1textfeld1.maxLength = '3';</p><p></p><p> var br = document.createElement('br');</p><p></p><p> var selectFeld = document.createElement('select');</p><p> selectFeld.name = 'behaeltertyp[' + zahl + ']';</p><p> </p><p> <?php</p><p> if($anzahl_kd > 0) {</p><p> while(odbc_fetch_into($res_kd,$data_kd)) {</p><p> ?></p><p></p><p> var optionFeld = document.createElement('option');</p><p> var selectWert = selectFeld.appendChild(optionFeld);</p><p> selectWert.text = "<?php echo $data_kd[2];?>" + ", " + "<?php echo $data_kd[1];?>";</p><p> selectWert.value = "<?php echo $data_kd[0];?>";</p><p></p><p> <?php</p><p> }</p><p> ?></p><p></p><p> var optionFeld = document.createElement('option');</p><p> var selectWert = selectFeld.appendChild(optionFeld);</p><p> selectWert.text = "------------------------------------------------------------";</p><p> selectWert.value = "";</p><p> </p><p> <?php</p><p> }</p><p></p><p> $z1 = 1;</p><p> while (odbc_fetch_into($res,$data_sel)) {</p><p> if(($z1 > 1) && ($trennlinie != $data_sel[17])) {</p><p> ?></p><p></p><p> var optionFeld = document.createElement('option');</p><p> var selectWert = selectFeld.appendChild(optionFeld);</p><p> selectWert.text = "------------------------------------------------------------";</p><p> selectWert.value = "";</p><p></p><p> <?php </p><p> }</p><p> ?></p><p> var optionFeld = document.createElement('option');</p><p> var selectWert = selectFeld.appendChild(optionFeld);</p><p> selectWert.text = "<?php echo $data_sel[5];?>" + ", " + "<?php echo $data_sel[4];?>";</p><p> selectWert.value = "<?php echo $data_sel[0];?>";</p><p> <?php</p><p> $trennlinie = $data_sel[17];</p><p> $z1++;</p><p> }</p><p></p><p> $sql="SELECT * FROM ladeeinheiten";</p><p> $res=odbc_exec($dbcon,$sql);</p><p> ?></p><p></p><p> var selectFeldLE = document.createElement('select');</p><p> selectFeldLE.name = 'ladeeinheit[' + zahl + ']';</p><p></p><p> <?php</p><p> while (odbc_fetch_into($res,$data_le)) {</p><p> if($_SESSION['language']=="deutsch") {</p><p> $le_anz=$data_le[2];</p><p> } elseif($_SESSION['language']=="polnisch") {</p><p> $le_anz=$data_le[3];</p><p> }</p><p> ?></p><p> var optionFeldLE = document.createElement('option');</p><p> var selectWertLE = selectFeldLE.appendChild(optionFeldLE);</p><p> selectWertLE.text = "<?php echo $le_anz;?>";</p><p> selectWertLE.value = "<?php echo $data_le[0];?>";</p><p> <?php</p><p> }</p><p> ?></p><p> </p><p> var out = document.getElementById("hs");</p><p> out.appendChild(TD1textfeld1);</p><p> out.appendChild(selectFeldLE);</p><p> out.appendChild(selectFeld);</p><p> out.appendChild(br);</p><p></p><p> zahl++;</p><p> document.FORMULAR.kontrollfeld.value = zahl;</p><p>}</p><p></script>[/CODE]</p><p></p><p>Diese JavaScript Funktion bewirkt, dass bei jedem Click im Formular ein Inputfeld und 2 Selectfelder erzeugt werden.</p><p>Der Inhalt der Selectfelder kommt dabei aus einer Tabelle der Datenbank.</p><p>Soweit funktioniert auch alles einwandfrei.</p><p>Der Inhalt der Selectfelder zeigt dann alle verfügbaren Behältertypen an. Nun möchte ich aber die Anzahl der Behältertypen einschränken auf die, die dem Kunden zugeordnet sind, weil die Liste sonst sehr lang ist.</p><p></p><p>Hierzu habe ich am Anfang der JavaScript Funktion mit </p><p>[CODE]var kd_check = document.FORMULAR.kd_check.value;[/CODE]</p><p>ein verstecktes Feld ausgelesen und in die JavaScript Variable kd_check gepackt. Diese Variable habe ich dann mit alert(kd_check) mir anzeigen lassen und sie war korrekt gefüllt. Bis hierhin also alles ok.</p><p></p><p>Mein Problem ist nun, dass ich nicht weis wie ich diese JS Variable in die SQL Abfrage immerhalb der JS Funktion einbauen kann. Probiert hatte ich es wie oben beschrieben ja mit.</p><p>[PHP]$sql_kd = "SELECT Behaelter_Typ.benr, Behaelter_Typ.beindex, Behaelter_Typ.bebezeichnung, behaelter_typ_kunde.kunde</p><p> FROM Behaelter_Typ INNER JOIN behaelter_typ_kunde ON Behaelter_Typ.benr = behaelter_typ_kunde.behaelter_nr</p><p> WHERE behaelter_typ_kunde.kunde = ' + kd_check + ' ORDER BY Behaelter_Typ.bebezeichnung";[/PHP]</p><p>Die JS Funktion läuft auch durch aber die Anzeige im Selectfeld zeigt weiterhin alle Behältertypen an und nicht die eingeschränkte Auswahl.</p><p></p><p>Meine Frage ist also, wie bekomme ich die Variable kdckeck in die SQL Abfrage?</p><p></p><p>Gruß</p><p>didi01</p></blockquote><p></p>
[QUOTE="didi01, post: 2685589, member: 38281"] Hallo, sorry das ich mich erst jetzt melde, aber beim dem schönen Wetter am Wochenende war ich nicht am PC. Ich versuche jetzt mal etwas genauer zu beschreiben. Ich habe eine PHP Datei in der ich an einer Stelle einen Button habe, der mit onClick eine JavaScript Funktion aufruft. [HTML]input type="button" name="schreiben" value="+" onclick="createInput()">[/HTML] wenn man auf den Button clickt, wird die die JavaScript Funktion aufgerufen die sich in der PHP Datei befindet. [CODE]<script type="text/javascript"> function createInput() { <?php $sql="SELECT * FROM behaelter_typ WHERE status = 1 ORDER BY standard DESC, bebezeichnung"; $res=odbc_exec($dbcon,$sql); ?> var zahl = document.FORMULAR.kontrollfeld.value; var kd_check = document.FORMULAR.kd_check.value; if(zahl=="") { zahl=1; } var TD1textfeld1 = document.createElement('input'); TD1textfeld1.type = 'text'; TD1textfeld1.name = 'we_anzahlbehaelter[' + zahl + ']'; TD1textfeld1.size = '5'; TD1textfeld1.maxLength = '3'; var br = document.createElement('br'); var selectFeld = document.createElement('select'); selectFeld.name = 'behaeltertyp[' + zahl + ']'; <?php if($anzahl_kd > 0) { while(odbc_fetch_into($res_kd,$data_kd)) { ?> var optionFeld = document.createElement('option'); var selectWert = selectFeld.appendChild(optionFeld); selectWert.text = "<?php echo $data_kd[2];?>" + ", " + "<?php echo $data_kd[1];?>"; selectWert.value = "<?php echo $data_kd[0];?>"; <?php } ?> var optionFeld = document.createElement('option'); var selectWert = selectFeld.appendChild(optionFeld); selectWert.text = "------------------------------------------------------------"; selectWert.value = ""; <?php } $z1 = 1; while (odbc_fetch_into($res,$data_sel)) { if(($z1 > 1) && ($trennlinie != $data_sel[17])) { ?> var optionFeld = document.createElement('option'); var selectWert = selectFeld.appendChild(optionFeld); selectWert.text = "------------------------------------------------------------"; selectWert.value = ""; <?php } ?> var optionFeld = document.createElement('option'); var selectWert = selectFeld.appendChild(optionFeld); selectWert.text = "<?php echo $data_sel[5];?>" + ", " + "<?php echo $data_sel[4];?>"; selectWert.value = "<?php echo $data_sel[0];?>"; <?php $trennlinie = $data_sel[17]; $z1++; } $sql="SELECT * FROM ladeeinheiten"; $res=odbc_exec($dbcon,$sql); ?> var selectFeldLE = document.createElement('select'); selectFeldLE.name = 'ladeeinheit[' + zahl + ']'; <?php while (odbc_fetch_into($res,$data_le)) { if($_SESSION['language']=="deutsch") { $le_anz=$data_le[2]; } elseif($_SESSION['language']=="polnisch") { $le_anz=$data_le[3]; } ?> var optionFeldLE = document.createElement('option'); var selectWertLE = selectFeldLE.appendChild(optionFeldLE); selectWertLE.text = "<?php echo $le_anz;?>"; selectWertLE.value = "<?php echo $data_le[0];?>"; <?php } ?> var out = document.getElementById("hs"); out.appendChild(TD1textfeld1); out.appendChild(selectFeldLE); out.appendChild(selectFeld); out.appendChild(br); zahl++; document.FORMULAR.kontrollfeld.value = zahl; } </script>[/CODE] Diese JavaScript Funktion bewirkt, dass bei jedem Click im Formular ein Inputfeld und 2 Selectfelder erzeugt werden. Der Inhalt der Selectfelder kommt dabei aus einer Tabelle der Datenbank. Soweit funktioniert auch alles einwandfrei. Der Inhalt der Selectfelder zeigt dann alle verfügbaren Behältertypen an. Nun möchte ich aber die Anzahl der Behältertypen einschränken auf die, die dem Kunden zugeordnet sind, weil die Liste sonst sehr lang ist. Hierzu habe ich am Anfang der JavaScript Funktion mit [CODE]var kd_check = document.FORMULAR.kd_check.value;[/CODE] ein verstecktes Feld ausgelesen und in die JavaScript Variable kd_check gepackt. Diese Variable habe ich dann mit alert(kd_check) mir anzeigen lassen und sie war korrekt gefüllt. Bis hierhin also alles ok. Mein Problem ist nun, dass ich nicht weis wie ich diese JS Variable in die SQL Abfrage immerhalb der JS Funktion einbauen kann. Probiert hatte ich es wie oben beschrieben ja mit. [PHP]$sql_kd = "SELECT Behaelter_Typ.benr, Behaelter_Typ.beindex, Behaelter_Typ.bebezeichnung, behaelter_typ_kunde.kunde FROM Behaelter_Typ INNER JOIN behaelter_typ_kunde ON Behaelter_Typ.benr = behaelter_typ_kunde.behaelter_nr WHERE behaelter_typ_kunde.kunde = ' + kd_check + ' ORDER BY Behaelter_Typ.bebezeichnung";[/PHP] Die JS Funktion läuft auch durch aber die Anzeige im Selectfeld zeigt weiterhin alle Behältertypen an und nicht die eingeschränkte Auswahl. Meine Frage ist also, wie bekomme ich die Variable kdckeck in die SQL Abfrage? Gruß didi01 [/QUOTE]
Bilder bitte
hier hochladen
und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Zitate einfügen…
Authentifizierung
Wenn ▲ = 7, ▼ = 3, ◇ = 2 und die Summe von ▲ und ▼ durch ◇ geteilt wird, was ist das Ergebnis?
Antworten
Start
Forum
Sonstiges
Webdesign, Webentwicklung & Programmierung
PHP, Javascript, jQuery, Ajax, nodeJS, MySQL...
SQL Abfrage innerhalb JavaScript mit Kriterium
Oben