WinFuture-Forum.de: [php+mysql] Feldern Werte Zuweisen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 2 Seiten +
  • 1
  • 2

[php+mysql] Feldern Werte Zuweisen irgendwie krieg ichs nicht raus..


#1 Mitglied ist offline   He4db4nger 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.005
  • Beigetreten: 27. März 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Mainz
  • Interessen:www.schenx.eu

geschrieben 21. Juni 2006 - 20:03

hallöle,

also ich muss für info ein php "programm" schreiben. Eigentlich ist das nicht allzu anspruchsvoll und durch das meiste beiß ich mich so durch. eine sache kapier ich jetzt allerdings nicht:

ich habe 2 Textfelder und 1 Textbereich (also ein großes Textfeld mit ner rollleiste)

so, Textfeld 1 ist zum eingeben einer aufgabennr, textfeld2 ist für die eingabe einer kursnr und das große Textfeld soll viel Text enthalten, alle 3 sollen in die richtige spalten in einer sql datenbank eingefügt werden.

aber wie verklicker ich jetzt diesem php dokument, dass in dem textfeld 1 die daten stehen für die tabellenspalte "aufgabennr", in textfeld2 die spalte "kursnr" und im dritten "aufgaben" eingegeben werden?

eine verbindung zur datenbank kann ich herstellen.

und weiterhin.. wie weiße ich dem "absenden" button die funktion zu,dass mit einem klick darauf die daten in die sql datenbank eingefügt werden?

im anhang hab ich mal die betroffene html datei drin. der code ist noch sehr unfein mit den ganzen &nbsp ausdrücken. das liegt am primären erstellen mit frontpage2003. den kram mit php versuche ich über dreamweaver8.

wäre nett, wenn mir einer helfen könnte.
vielen dank schonmal im vorraus =)
0

Anzeige



#2 Mitglied ist offline   Meatwad 

  • Gruppe: aktive Mitglieder
  • Beiträge: 784
  • Beigetreten: 07. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Bad Vilbel
  • Interessen:Computer, Inliner, Chatten...

geschrieben 21. Juni 2006 - 20:27

autsch...
<?php 
include 'include/cfg.php';
my_sql_query("INSERT INTO Aufgaben VALUES ('AufgabenNr','KursNr','Aufgabe')
?>


1.vlt hier erstmal den string zumachen mit einem "
2. seit wann gibt es die funktion my_sql_query() ...habe ihc was verpasst? ...ich glaub du meinst hier mysql_query()
3. jeder "abschnitt" muss mit einem ; geschlossen werden (außnahmen sind z.B. schleifen)
4. verstehe ich nicht,was was der query da soll? du hast ja garkeine tabellenfelder angegeben.

und vorallem: woher werden denn die werte genommen? du musst da schon die variablen $_POST['feldname'] oder $_GET['feldname'] verwenden,wobei für dein vorhaben warscheinlcih post das richtige ist
5. hast du garkein formular erstellt.


sollte fürs erste reichen - hoffe ich. bereinige erstmal diese sachen, dann sehen wir weiter:-)


erklährt euer info-lehrer das nicht? aber wenn du mal vorarbeiten willst: http://tut.php-q.net/

Dieser Beitrag wurde von Meatwad bearbeitet: 21. Juni 2006 - 20:30

I am away to look for my self. If I am back before I return keep me here. | Mein Server
0

#3 Mitglied ist offline   He4db4nger 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.005
  • Beigetreten: 27. März 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Mainz
  • Interessen:www.schenx.eu

geschrieben 21. Juni 2006 - 21:53

unser info lehrer hat scheinbar noch nicht mal studiert..^^ ok,werd das morgen mal überarbeiten =)

ach,dann haben diese gestrichelten linie doch einen sinn.. d.h. dass die 3 felder in ein formular müssen? und in dieses formular kommt dann der entsprechende part von php?

meine basis ist ein buch aus der schulbibliothek. anhand dessen beispiel versuch ich das auf mein problem anzuwenden. das problem dabei is halt, dass in diesem schulbuch ("Datenbankprogrammierung mit MySQL5 und PHP5" von Helma Spona unter dem Label 'einsteigerseminar') das ziemlich hard beschrieben ist ohne wirkliche Erklärungen. und unser info lehrer is schon hilflos überfordert, wenn er allein vor dem pc sitzt, den kann man auch nicht wirklich fragen =)

was ich grade gesehen habe ist sowas:

<form action="formtest.php" method="post">

d.h. dass die abwicklung von diesem post in einem externen dokument geschieht. da dies scheinbar "normal" bei php sachen ist (google zufolge), müsste ich das dann auch so umsetzen..

so letzte ergänzung für heute nacht ^^ habe jetzt den ganzen geänderten kram hochgeladen. die übergabe an die post.php scheint geklappt zu haben, zumindest lädt er die post.php, die ist jetzt natürlich noch leer. in der index.html habe ich die $_POST Arrays mit den Textfeldern definiert, wie ich sie in einem Beispiel im internet gefunden habe. kann ich diese $_POST jetzt einfach in die post.php einsetzen und dem verklickern, dass er die Werte in die SQL Datenbank tippern soll? Oder rafft der dann nicht, dass das das selbe ist? Ich probiers jetzt net mehr, is schon spät ^^ Also falls das bis morgen mittag irgendjemand liest.. nur zu mit den Antworten ^^

Dieser Beitrag wurde von He4db4nger bearbeitet: 22. Juni 2006 - 01:00

0

#4 Mitglied ist offline   Meatwad 

  • Gruppe: aktive Mitglieder
  • Beiträge: 784
  • Beigetreten: 07. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Bad Vilbel
  • Interessen:Computer, Inliner, Chatten...

geschrieben 22. Juni 2006 - 14:12

also du brauchst auf jedenfall den <form> tag.

wo ist denn nun deine neue datei?
I am away to look for my self. If I am back before I return keep me here. | Mein Server
0

#5 Mitglied ist offline   He4db4nger 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.005
  • Beigetreten: 27. März 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Mainz
  • Interessen:www.schenx.eu

geschrieben 22. Juni 2006 - 17:03

hoppla, die hab ich ganz vergessen.. ^^

so, jetzt hab ich noch ein problem..
in der datei index.php, die gleich noch angehängt wird, hab ich 2 dropdown menüs. jetzt hab ich zwar verschiedene anleitungen gefunden, wie man in diese dropdown listen sql werte einfügen kann, nur klappt das irgendwie nicht.. der füllt die dropdowns nicht.. irgendwie komisch...

Dieser Beitrag wurde von He4db4nger bearbeitet: 22. Juni 2006 - 19:02

0

#6 Mitglied ist offline   Meatwad 

  • Gruppe: aktive Mitglieder
  • Beiträge: 784
  • Beigetreten: 07. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Bad Vilbel
  • Interessen:Computer, Inliner, Chatten...

geschrieben 22. Juni 2006 - 20:45

was hat denn das
<?php
$_POST['text1'];  // Kursnummer
$_POST['text2'];  // Aufgabennummer
$_POST['text3'];  // Aufgabentext
?>

in der admin.htm zu tun? und vor allem dürfte das bei Standardkonfiguration garnicht geparsed werden, da die endung .htm ist


und hier verstehe ich wieder nicht, was diese zeilen in der admin.php zu tun haben...
<?php
$_POST['antwort'];
$_POST['D2'];
$_POST['D1'];
?>


mysql_connect($dbhost, $dbuname, $dbpass, $dbname); 
$kurs = mysql_query("SELECT KursNr, KursBez FROM Kurs"); 
$adr = mysql_fetch_array($Kurs);

soweit ich weiß, ist der 4. parameter nicht die datenbank. dazu musst du die funktion mysql_select_db() verwenden. und groß-/kleinschreibung bei den variablen beachten

außerdem wird hier nix ausgegeben, da kannst du dann natürlich kein select-feld drum machen. hier währe ne for- oder whileschleife angebracht
I am away to look for my self. If I am back before I return keep me here. | Mein Server
0

#7 Mitglied ist offline   He4db4nger 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.005
  • Beigetreten: 27. März 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Mainz
  • Interessen:www.schenx.eu

geschrieben 22. Juni 2006 - 20:50

ok,das oben wäre erledigt =)

neues problem:

nach der Auswahl der 2 entsprechenden Menüs (beide sind in einem Formular zusammengebunden)soll man auf den Button "Absenden" klicken und dann seine entsprechende Aufgabe erhalten. Es gibt auch die Möglichkeit, direkt nach Auswahl im Dropdownmenü das Formular abzusenden und das 2te Menü erscheint dann in Abhängigkeit vom ersten. Mangels meiner kaum vorhandenen PHP-Kenntnisse erscheint mir jedoch Variante 1 als "einfacher".

Die 2 oberen Menüs habe ich jetzt in ein Formular gepackt und noch einen Absenden button hinzugefügt..

Dieser Beitrag wurde von He4db4nger bearbeitet: 23. Juni 2006 - 13:27

0

#8 Mitglied ist offline   Meatwad 

  • Gruppe: aktive Mitglieder
  • Beiträge: 784
  • Beigetreten: 07. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Bad Vilbel
  • Interessen:Computer, Inliner, Chatten...

geschrieben 23. Juni 2006 - 23:06

habe nicht ganz verstanden was du möchtest. ein menü soll auf einer 2. seite angezeigt werden, jenachdem, was in dem auswahlfeld steht? geht einfach mit if() oder switch().
I am away to look for my self. If I am back before I return keep me here. | Mein Server
0

#9 Mitglied ist offline   He4db4nger 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.005
  • Beigetreten: 27. März 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Mainz
  • Interessen:www.schenx.eu

geschrieben 26. Juni 2006 - 15:39

kuckst du hier: http://projectms.pr....y/pub/index.php so, da hast du ja oben 2 auswahlfelder.. "Kurs" und "aufgabennummer" und den senden button. Und bei dieser Auswahl soll nun ein entsprechender Text (der auch aus der Datenbank kommt) angezeigt werden. Doch grade diese Verknüpfung zwischen auswahl,button und anzeige krieg ich beim besten Willen nicht hin.

include 'cfg.php';
import_request_variables ("gp","frm_");
mysql_connect($dbhost, $dbuname, $dbpass) or die ("Unable to connect to database. Err.: ".mysql_error());
mysql_select_db($dbname) or die ("Unable to select database. Err.: ".mysql_error());

$abfrage="SELECT Name FROM Aufgaben WHERE Name LIKE ('$frm_search')";
$sql=mysql_query($abfrage);
while ($row=mysql_fetch_array($sql))
{
echo $row;
}

warum kommt bei dem schnippsel in der ausgabe nur "array" und nicht die namen? aaaaahh...ich dreh bald durch

Dieser Beitrag wurde von He4db4nger bearbeitet: 26. Juni 2006 - 17:30

0

#10 Mitglied ist offline   Meatwad 

  • Gruppe: aktive Mitglieder
  • Beiträge: 784
  • Beigetreten: 07. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Bad Vilbel
  • Interessen:Computer, Inliner, Chatten...

geschrieben 26. Juni 2006 - 19:55

Zitat

warum kommt bei dem schnippsel in der ausgabe nur "array" und nicht die namen? aaaaahh...ich dreh bald durch

da kommt nur array, weils ein array ist. nimm print_r($row); anstatt echo.


zu deinen auswahlfeldern:
so wie ich das verstanden habe, muss einmal der kurs und dann die aufgabennummer angegeben werden. und daraus folgt dann,was im 2. formular steht, nichtwar?
wenn ja, dann mach das doch einfach auf 2 seiten. wenn man beim 1. absenden klickt, öffnet sich die 2. seite und dann ist dort das 2. formular
I am away to look for my self. If I am back before I return keep me here. | Mein Server
0

#11 Mitglied ist offline   He4db4nger 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.005
  • Beigetreten: 27. März 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Mainz
  • Interessen:www.schenx.eu

geschrieben 27. Juni 2006 - 15:48

ok, gute idee.

und wie sag ich dem,dass er beim laden die auswahl aus formular1 berücksichtigen soll?
die auswahl in den dropdowns.. ich find das nirgends, das geht auch weit über das in meinem buch hinaus..^^

wenn ich print_r einsetze kommt zB sowas raus:

Array ( [Name] => klaus )

//ok,das habe ich jetzt verstanden. das mit den vielen klammern stört zwar, aber is vorerst mal kosmetik.

Dieser Beitrag wurde von He4db4nger bearbeitet: 27. Juni 2006 - 15:58

0

#12 Mitglied ist offline   Meatwad 

  • Gruppe: aktive Mitglieder
  • Beiträge: 784
  • Beigetreten: 07. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Bad Vilbel
  • Interessen:Computer, Inliner, Chatten...

geschrieben 27. Juni 2006 - 16:13

mit ner if sagst du dem 2. formular, was er reinmachen soll.

und das mit der ausgabe eines arrays machst du am besten mit ner foreach-schleife. das print_r() bzw var_dump() ist mehr fürs debugging gedacht
I am away to look for my self. If I am back before I return keep me here. | Mein Server
0

#13 Mitglied ist offline   He4db4nger 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.005
  • Beigetreten: 27. März 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Mainz
  • Interessen:www.schenx.eu

geschrieben 27. Juni 2006 - 17:53

die müsste doch so aussehen,oder?

$abfrage2="SELECT Name FROM Aufgaben ORDER BY Name";
$sql2=mysql_query($abfrage2);
if (mysql_errno()) die ("MySQL-Error: " . mysql_error());
$arr=array($sql2);

foreach ($arr as $test)
{
print ($test);
}

allerdings erhalte ich da nur als ausgabe "ressource id#5".. was auch immer das heißen mag :/
0

#14 Mitglied ist offline   Meatwad 

  • Gruppe: aktive Mitglieder
  • Beiträge: 784
  • Beigetreten: 07. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Bad Vilbel
  • Interessen:Computer, Inliner, Chatten...

geschrieben 28. Juni 2006 - 17:36

da hast du das mysql_fetch_assoc() bzw mysql_fetch_array() vergessen. aber da kannst du natürlich auch einfach mit $line[$spaltenname] agieren
I am away to look for my self. If I am back before I return keep me here. | Mein Server
0

#15 Mitglied ist offline   He4db4nger 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.005
  • Beigetreten: 27. März 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Mainz
  • Interessen:www.schenx.eu

geschrieben 03. Juli 2006 - 17:00

hm..ok

nächste frage :P

for($i=0; $i<mysql_num_rows($sql2); $i++)
{
$Result=mysql_fetch_object($sql2);
echo"<tr>",
"<td>",
$Result->Name,
"</tr>";
}

wie krieg ich es in diesem code hin,dass er mir die Ergebnisse in der nächsten zeile rauswürgt? bis jetzt da nur "klausjoachimhans" er soll aber
klaus
joachim
hans

ausgeben. irgendwie find ich dazu nix..und in meinem tollen schulbuch sowieso nicht ^^
0

Thema verteilen:


  • 2 Seiten +
  • 1
  • 2

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0