- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 20-04-2017, 14:04
MorphoisII
 Registrierter Benutzer
Links : Onlinestatus : MorphoisII ist offline
Registriert seit: Apr 2017
Beiträge: 3
MorphoisII befindet sich auf einem aufstrebenden Ast
Standard Select-Felder in Abhängigkeit aus mySQL befüllen und wieder in SQL eintragen?

Moin allerseits.

Ich habe folgende 2 Probleme:

Problem 1:
Ich habe ein Formular mit mehreren Select-Feldern.
Abhängig von der Auswahl im ersten Select-Feld soll die Auswahl im zweiten bzw. dritten Select-Feld zur Auswahl stehen.
Hatte es über ein Javascript gelöst, da aber die Datenmenge doch relativ groß wird/werden kann und zudem noch mit möglichst geringem Aufwand gewartet werden können soll, möchte ich für die Daten eine SQL-db nutzen.
Nun soll eben in Select-Feld 1 die Daten aus Tabelle 1 auswählbar sein.
Das funktioniert auch problemlos.
Allerdings sollen nun im Select-Feld 2 abhängig zur Auswahl in Feld 1 die Daten aus Tabelle 2 angezeigt werden und auswählbar sein.
Feld 1 ist wie unten zu sehen befüllt als Abteilung und dementsprechend sollen dann im zweiten Select-Feld nur die Mitglieder aus der ausgewählten Abteilung auswählbar sein

Hab mir schon verschiedene Tut´s für Ajax angeschaut, aber das sind bisher noch böhmische Dörfer für mich.


Problem 2:

Wie gesagt, die Auswahl in den Select-Feldern soll dann wieder in eine weitere Tabelle der db geschrieben werden.
Das funktioniert auch. Teilweise.

Hab 2 verschiedene Varianten ausprobiert.
Version 1:
Direkt im HTML-Code
HTML-Code:
.... <td>
	<?php
	mysql_connect("localhost:666", "root", "") or die (mysql_error ());
	mysql_select_db("test") or die(mysql_error());
	$strSQL = "SELECT * FROM abteilung ORDER BY abt_id ASC";
	$rs = mysql_query($strSQL);
	echo '<select name="abteilung">';
	while($row = mysql_fetch_array($rs)) {
	   if ($row['unterabteilung'])
	   {
		   $strName = $row['abteilung'] . " - " . $row['unterabteilung'];
	   }
	  else
	  {
		  $strName = $row['abteilung'];
	  }
	    echo '<option value=".$strName.">'. $strName . '</br>' . '</option>';
	  }
	  echo '</select>';
	mysql_close();
	?>
	</td>....
Version 2:
Per Aufruf einer PHP-Datei:
HTML-Code:
...<td>
	<?php
	include ("list2.php");
	?>
	</td>...
Und dann die PHP-Datei:
PHP-Code:
<?php
    mysql_connect
("localhost:666""root""") or die (mysql_error ());
    
mysql_select_db("test") or die(mysql_error());
    
$strSQL "SELECT * FROM abteilung ORDER BY abt_id ASC";
    
$rs mysql_query($strSQL);    
    echo 
'<select>';    
    while(
$row mysql_fetch_array($rs)) {
       if (
$row['unterabteilung'])
       {
           
$strName $row['abteilung'] . " - " $row['unterabteilung'];
       }
      else
      {
          
$strName $row['abteilung'];
      }
        echo 
'<option value=".$strName.">'$strName '</br>' '</option>';
      }
      echo 
'</select>';
    
mysql_close();
?>
Wie gesagt. Das Befüllen des Select-Feldes funktioniert problemlos. Beim Absenden/ Eintragen in die db steht dann
Code:
. $row[
im Datenbank-Feld.

Ich hoffe jemand kann mir (im besten Fall) nur eine fehlerhafte Sonderzeichennutzung aufzeigen.
Oder eben einen Lösungsansatz / eine Lösung für meine Probleme zeigen.

Ach. Als Hinweis noch. Es MUSS im IE11 funktionieren. (Und nur da)
Mit Zitat antworten
  #2 (permalink)  
Alt 21-04-2017, 10:16
bandit600
 Registrierter Benutzer
Links : Onlinestatus : bandit600 ist offline
Registriert seit: Jan 2010
Beiträge: 116
bandit600 befindet sich auf einem aufstrebenden Ast
Standard

  1. Dein Script ist jetzt schon veraltet und wird unter PHP 7 nicht mehr laufen, da du die veralteten mysql_*-Funktionen benutzt. Stelle um auf mysqli_
  2. Ich sehe nirgendwo ein Insert
Zitat:
Zitat von MorphoisII Beitrag anzeigen
Hab mir schon verschiedene Tut´s für Ajax angeschaut, aber das sind bisher noch böhmische Dörfer für mich.
Dann musst du dich mehr damit beschäftigen, denn es wird dir niemand ein fertiges Script liefern.


16.14. Warum soll ich nicht SELECT * schreiben?
http://www.php-faq.de/q/q-sql-select.html

Geändert von bandit600 (21-04-2017 um 10:19 Uhr)
Mit Zitat antworten
  #3 (permalink)  
Alt 21-04-2017, 10:49
MorphoisII
 Registrierter Benutzer
Links : Onlinestatus : MorphoisII ist offline
Registriert seit: Apr 2017
Beiträge: 3
MorphoisII befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von bandit600 Beitrag anzeigen
  1. Dein Script ist jetzt schon veraltet und wird unter PHP 7 nicht mehr laufen, da du die veralteten mysql_*-Funktionen benutzt. Stelle um auf mysqli_
  2. Ich sehe nirgendwo ein Insert

Dann musst du dich mehr damit beschäftigen, denn es wird dir niemand ein fertiges Script liefern.


16.14. Warum soll ich nicht SELECT * schreiben?
FAQ der Newsgroups de.comp.lang.php.* - 16.14.****Warum soll ich nicht SELECT * schreiben?
Zu 1.: PHP7. Danke für den Hinweis. Muss ich mir mal anschauen.
Zu 2.: Das INSERT passiert in der formular.php an die ich die Eingaben übergebe.

PHP-Code:
<?php
  mysql_connect
("localhost:666","root","")or die("Keine Verbindung moeglich");
  
mysql_select_db("test");

$datum $_POST['datum']; 
$abteilung $_POST['abteilung'];
...
$insert 'INSERT INTO liste 
(datum, abteilung, ...) 
VALUES 
("'
.$datum.'", "'.$abteilung.'",.....)';

$eintragen mysql_query($insert) or die("Fehler: ".mysql_error());
     echo 
'Der Eintrag war erfolgreich';

echo 
'<a href="test.php">Zurück</a>';
?>
Zu dem Hinweis bzgl des fertigen Scripts: Ich hatte gehofft, ich könnte vielleicht einen Ansatz bekommen, damit ich mich nicht komplett in die Materie einlesen muss, sondern "learning by doing".

Zu 16.14.: Das "SELECT *" verwende ich nur weil in der Tabelle eh nur 3 bzw 4 Spalten drin stehen. Ich könnte natürlich auch "SELECT vorname, nachname, abt_id FROM..." schreiben, aber in meinem Fall ist "SELECT *" kürzer und erfüllt den gleichen Zweck.
Bei umfangreicheren Tabellen würde ich das DEFINITIV nicht so schreiben.
Mit Zitat antworten
  #4 (permalink)  
Alt 21-04-2017, 11:05
bandit600
 Registrierter Benutzer
Links : Onlinestatus : bandit600 ist offline
Registriert seit: Jan 2010
Beiträge: 116
bandit600 befindet sich auf einem aufstrebenden Ast
Standard

Dein Script passt nicht zur Aussage, dass ". $row[" in der DB steht.

"Select *" ist immer kürzer, aber auch immer falsch.
Mit Zitat antworten
  #5 (permalink)  
Alt 21-04-2017, 12:22
MorphoisII
 Registrierter Benutzer
Links : Onlinestatus : MorphoisII ist offline
Registriert seit: Apr 2017
Beiträge: 3
MorphoisII befindet sich auf einem aufstrebenden Ast
Standard



So sieht es in der Datenbank aus. Das ist die Tabelle in die der Eintrag geschrieben wird.
Die erste Spalte sollte eigentlich das Mitglied sein das im Formular ausgewählt ist, Datum und Nummer passen aber die Abteilung passt wieder nicht.
Mit Zitat antworten
  #6 (permalink)  
Alt 21-04-2017, 12:51
bandit600
 Registrierter Benutzer
Links : Onlinestatus : bandit600 ist offline
Registriert seit: Jan 2010
Beiträge: 116
bandit600 befindet sich auf einem aufstrebenden Ast
Standard

Also, wenn in der DB .$strName. stehen würde, könnte ich das verstehen, weil das steht bei dir im Value der Selectbox, aber wo das $row[ herkommen soll, keine Ahnung.

Sieh' dir mal den generieten HTML-Code im Browser an.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[gelöst] Alias aus SELECT wieder in SELECT verwendet dumdumdum SQL / Datenbanken 6 21-09-2009 17:05
Auswahllisten dynamisch aus Datenbank füllen und in Abhängigkeit setzen jessies PHP Developer Forum 2 19-02-2008 17:02
2 DropDown Felder in abhängigkeit hieger HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 1 12-05-2007 13:01
DIV mit javascript befüllen und wieder leeren php_rookie HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 1 01-03-2007 16:52
CSS und select-felder Kropff HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 5 13-02-2003 09:50

Themen-Optionen
Thema bewerten
Thema bewerten:

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 are an
Pingbacks are an
Refbacks are an


PHP News

WannaCry stoppen & entfernen
WannaCry stoppen & entfernenmobilegeeks.de hat eine kurz Anleitung erstellt, wir Ihr Eure infizierten Windows-PCs evtl. wieder zu laufen bekommt.

19.05.2017 | Berni

Multi-Branchen-Marktplatzsoftware 7.2.2 veröffentlicht
Multi-Branchen-Marktplatzsoftware 7.2.2 veröffentlichtDie Software ebiz-trader steht in der Version 7.2.2 zur Verfügung.

28.10.2016 | Berni


 

Aktuelle PHP Scripte

Web-Radio-CMS ansehen Web-Radio-CMS

Die Einrichtung Ihrer Inhalte und Änderungen am Design machen Sie ganz einfach online. Dieses CMS ist auch ganz speziell für Web-Radio User optimiert.

17.06.2017 Web-Radio-CMS | Kategorie: PHP/ CMS
uHotelBooking

uHotelBooking - hotel management, reservation and online booking system for all types of accommodations and hotel operations

14.06.2017 apphpcom | Kategorie: PHP/ CMS
Buchungssystem - Booking Monitor

Booking Monitor ist ein professionelles Buchungssystem, das kostenlos zur Verfügung gestellt wird. Dieses Buchungssystem ist sowohl für Vermietung von Unterkünften und Ferienobjekten als auch für Vermietung von Booten, Hallen, Büros, Autos, Elektrowaren u

12.06.2017 booking-monitor | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:36 Uhr.