Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Formular auswerten [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Formular auswerten


 
mgoertz
17-05-2005, 09:49 
 
Hallo zusammen,

ich hab ein Problem ein Formular auszuwerten. Hier mein Code:


<form>
<?php
$artikel = mysql_query ("SELECT id, bezeichnung1 FROM
$prefix"."_artikel ORDER BY bezeichnung1 ASC")or die(mysql_error());
echo '<select onchange="this.form.preis.value=this.options
[this.selectedIndex].value" name="preis1" class="input" style="WIDTH:
100%" tabIndex=2>';
while ($cat1 = mysql_fetch_object($artikel)) {
$preisquery = mysql_query ("SELECT preis1, waehrung1 FROM
$prefix"."_preise WHERE ((id_artikel1 ='$cat1->id') and
((kunden_id='$kidsel') or (kunden_id=0))) ORDER BY kunden_id DESC")
or die(mysql_error());
$cat2 = mysql_fetch_object($preisquery);
$preis1_deutsch = str_replace ('.', ',', $cat2->preis1);

echo "<option value=\"".$preis1_deutsch."&nbsp;".$cat2->
waehrung1."\">".$cat1->bezeichnung1."</option>";}
echo "</select>";
echo '</td>';
?>
</form>


Wenn ich jetzt $_POST['preis1'] ausgeben lasse bekomme ich den Preis,
was so auch ok ist. Nun möchte ich aber noch gerne die id des Artikels
abgreifen. Aber ich bekomme das nicht hin. Kann mir da evtl. jemand helfen ??? Danke

 
asp2php
17-05-2005, 10:15 
 
dann mußt du $cat1->id dem Formular auch mitgeben, denn von nichts kommt nichts ;)

 
mgoertz
17-05-2005, 10:23 
 
ok dass ich $cat1->id dem Formular mit geben muss ist mir klar, ich weiß nur nicht wie ich dem Formular mehrere Felder übergebe

 
asp2php
17-05-2005, 10:36 
 
z.B. pipe-separiert mit dem Preis zusammen und dann mußt du bei der Übernahme des Preises in das andere Feld vorher auseinander pflücken.

 
mgoertz
17-05-2005, 10:39 
 
könntest du mir da evtl mal mit ein wenig code weiterhelfen ?

 
asp2php
17-05-2005, 10:53 
 
z.B. so

echo "<option value=\"".$preis1_deutsch."&nbsp;".$cat2->
waehrung1."|".$cat1->id."\">".$cat1->bezeichnung1."</option>";}


dann bei onChange 'ne JS-Funktion aufrufen, welche zuerst die ID abschneidet, dann den Preis in das Zielfeld schreiben.

 
mgoertz
17-05-2005, 11:14 
 
ok in php kann ich den String zerlegen nur weiß ich nicht wie es in javascript geht, da ich in sachen JS keinen Plan habe, kann mir dabei jemand helfen ?

 
asp2php
17-05-2005, 12:18 
 
dann schau dir die String-Methoden in SELFHTML an:

- .indexOf
- .substr

ungefähr so: sei x = '123,45 EUR|2'

x.substr(0,x.indexOf('|')) könnte schon das richtige liefern

 
mgoertz
17-05-2005, 13:07 
 
ok werde es dann mal versuchen

 
mgoertz
17-05-2005, 14:48 
 
irgendwie will es nicht ganz so wie es sollte

 
asp2php
17-05-2005, 14:50 
 
toll ... und wer soll jetzt raten, was geht, was geht nicht, was du gemacht hast, wasfür Fehlermeldung du bekommst?

 
mgoertz
17-05-2005, 14:58 
 
die Zeile sieht jetzt so aus:


echo '<select onchange="this.form.preis.value=this.options
[this.selectedIndex].value.substr(0,this.options
[this.selectedIndex].value.indexOf('|')) " name="preis1" class="input"
style="WIDTH: 100%" tabIndex=2>';


in der Ausgabe kommt irgendwie nur Müll raus

 
asp2php
17-05-2005, 15:03 
 
Original geschrieben von mgoertz

in der Ausgabe kommt irgendwie nur Müll raus
klar, wenn Müll drin ist, was soll denn sonst raus kommen? Warum baust du keine Funktion dafür?

 
mgoertz
17-05-2005, 15:17 
 
weil ich mich leider mit javascript noch nicht gut auskenne. würde das Problem ja gerne beheben damit ich euch nicht belästigen muss.

Kannst du mir dabei nicht kurz mit einer Codezeile helfen ?

 
asp2php
17-05-2005, 15:25 
 
schau doch mal im JS-Forum (http://www.php-resource.de/forum/forumdisplay.php?s=&forumid=15) um, dann weißt du wie man eine Funtkion baut und über Eventhandler aufruft. Hab' grad keine Zeit.

 
mgoertz
17-05-2005, 21:45 
 
leider hab ich es bislang immer noch nicht hingebracht. mein String wird nun in Javascript richtig zerlegt er wird nur noch nicht angezeigt.

Hier mein Code:

<head>
..
<script language="JavaScript">
<!--
function zerlege() {
var komplett = window.options[window.selectedIndex].value;
var zerlegt = komplett.substr(0,komplett.indexOf('|'))
window.form.preis.value= zerlegt;
}
//-->
</script>

</head>


...



echo '<select onchange="zerlege()" name="preis1" class="input" style="WIDTH: 100%" tabIndex=2>';



Kann mir dabei evtl jemand helfen ???

 
asp2php
18-05-2005, 09:26 
 
Nee ... so nicht, ich sehe dass du null Ahnung von JS hast, was ich anfangs nicht vermutet habe. Und weil ich dir keine fertige Funktion geben will, darfst du dich nun damit: http://de.selfhtml.org/javascript/index.htm auseinandersetzen, oder dich einfach mal im Forum herum stöbern. Sorry.

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:48 Uhr.