danke dadurch ich jetzt mit 0 beginne brauch ich auch kein +1 mehr.
Danke :-)
Max. Varibalenwert javascript/php
Einklappen
X
-
aso. dann musst du aber auch den startwert der for() auf 1 setzen. aber das hast du ja wahrscheinlich gemacht..
warum lässt du das eigentlich erst bei 1 beginnen?
Einen Kommentar schreiben:
-
das +1 liegt daran da der Startwert im javascript mit 1 beginnt und nicht mit 0 siehe quelltext oben.
Einen Kommentar schreiben:
-
statt +1 kann man auch kleiner-gleich ( <= ) vor das count() setzen.
aber eigentlich sollte das array ja bei 0 beginnen. daher verstehe ich das mit dem +1 nicht. normalerweise braucht man das nicht. siehe bsp-code von mit. teste den 1:1 und es geht.
Einen Kommentar schreiben:
-
@Abraxax danke für den lösungsvorschlag habe es mit count gelöst musste nur +1 immer dazurechnen da er sonst immer den letzten eintrag nicht mit eingetragen hat nun funktioniert es prima danke.
Einen Kommentar schreiben:
-
wenn ich das richtig sehe, hast du drei arrays, die aufgrund ihres index zueinander gehören.
das würde ich sowieso schon einmal anders lösen. nämlich ein array mit unterarray.
als beispiel
PHP-Code:$data = array();
$data[] = array ('vk' => 0.1, 'ek' => 0.2, 'kosten' => 0.5);
$data[] = array ('vk' => 0.4, 'ek' => 0.9, 'kosten' => 0.2);
$data[] = array ('vk' => 0.5, 'ek' => 0.3, 'kosten' => 0.8);
nun kannst du mit count() das oberarray checken und deine ausgaben machen.
PHP-Code:for ($i=0;$i<count($data);$i++)
{
echo $data[$i]['vk'];
echo $data[$i]['ek'];
echo $data[$i]['kosten'];
echo '<br />':
}
PHP-Code:for($n=0; $n<count($vk_preis_f); $n++)
{
$vk_preis_f[$n]=ereg_replace(",",".",$vk_preis[$n]);
$ek_preis_f[$n]=ereg_replace(",",".",$ek_preis[$n]);
$var_kosten_f[$n]=ereg_replace(",",".",$var_kosten[$n]);
}
*VERSCHIEB*
Einen Kommentar schreiben:
-
die for schleife habe ich in der 2ten seite damit werden die werte der input felder in die db eingetragen das klappt auch ich weiss nur nicht wie ich
['+nfiles+'] maximalwert ermittle. als erklärung hier der code vielleicht kennt ihr euch dann aus was ich meine.
Seite 1
PHP-Code:
<script>
var nfiles=1;
function Expand(){
nfiles++
var adh = '<BR><td width="60"><input style="text-align : right" type="text" name="menge['+nfiles+']" value="" size="7" border="0"></td> <td width="60"><input style="text-align : right" type="text" name="vk_preis['+nfiles+']" value="" size="7" border="0"></td> <td width="60"><input style="text-align : right" type="text" name="ek_preis['+nfiles+']" value="" size="7" border="0"></td> <td width="60"><input style="text-align : right" type="text" name="var_kosten['+nfiles+']" value="" size="7" border="0"></td>';
files.insertAdjacentHTML('BeforeEnd',adh);
return false;
}
</script>
<form action="preiskat_neu_save.php" method="post">
<input type="hidden" name="art_id" value="<?echo $art_id; ?>" border="0"><input type="hidden" name="preis_kat" value="<?echo $preis_kat; ?>" border="0">
<tr>
<td>
<table class="t_text" border="0" cellspacing="0" cellpadding="0">
<tr bgcolor="#bbbbbb">
<td width="60">
<div align="center">
<b>Menge</b></div>
</td>
<td width="60">
<div align="center">
<b>VK</b></div>
</td>
<td width="60">
<div align="center">
<b>EK</b></div>
</td>
<td width="56">
<div align="center">
<b>VarK.</b></div>
</td>
</tr>
</table>
<div id="files">
</td>
<td width="60"><input style="text-align : right" type="text" name="menge[1]" value="" size="7" border="0"></td>
<td width="60"><input style="text-align : right" type="text" name="vk_preis[1]" value="" size="7" border="0"></td>
<td width="60"><input style="text-align : right" type="text" name="ek_preis[1]" value="" size="7" border="0"></td>
<td width="60"><input style="text-align : right" type="text" name="var_kosten[1]" value="" size="7" border="0"></td>
</div><input type="submit" name="submit" value="eintragen" border="0"> <input id="button1" onclick="return(Expand())" type="button" name="button1" value="Neue Zeile"><br>
</td>
</tr>
</form>
</body>
</html>
Seite 2
hier habe ich bei $n 50 angegeben und dies sollte der maximalwert von ['+nfiles+'] vom javascript sein
PHP-Code:<?
for($n=0; $n<50; $n++)
{
$vk_preis_f[$n]=ereg_replace(",",".",$vk_preis[$n]);
$ek_preis_f[$n]=ereg_replace(",",".",$ek_preis[$n]);
$var_kosten_f[$n]=ereg_replace(",",".",$var_kosten[$n]);
}
if ($submit)
{
for($n=0; $n<50; $n++)
{
if(!empty($menge[$n]))
mysql_query("INSERT INTO preis_kat (art_id,preis_kat,staffelpreis,vk_preis,ek_preis,var_kosten) VALUES ('$art_id','$preis_kat','$menge[$n]','$vk_preis_f[$n]','$ek_preis_f[$n]','$var_kosten_f[$n]')");
}
?>
lg
Einen Kommentar schreiben:
-
Ein bisschen mehr erklären könntest Du schon Aber wenn ich dich richtig verstanden habe, brauchst Du keine for-schleife, sondern ein while. Beim ersten Objekt, das null zurückgibt, brichst Du ab.
Einen Kommentar schreiben:
-
ich verstehe nicht, was du meinst.
eine schleife sehe ich nicht, und wovon brauchst du den maximalwert?
Einen Kommentar schreiben:
-
Max. Varibalenwert javascript/php
durch einen mausklick kann man hierbei immer eine zeile
hinzufügen dies klappt auch das ganze wird dann mittels
einer schleife in die db eingetragen klappt auch nur bekomme ich
es nicht hin wie oft man die schleife durch laufen soll habe jetzt einen
festen wert genommen aber da dies ja schwachsin ist würde ich
es gerne mit dem wirklich wert durchlaufen.
Bräuchte also +nfiles+ maximalwert-
wäre echt prima wenn mir da wer weiterhelfen kann. Danke
PHP-Code:<script>
var nfiles=1;
function Expand(){
nfiles++
var adh = '<BR><td width="60"><input style="text-align : right" type="text" name="menge['+nfiles+']" value="" size="7"
border="0"></td> <td width="60"><input style="text-align : right" type="text" name="vk_preis['+nfiles+']" value="" size="7" border="0"></td> <td width="60"><input style="text-align : right"
type="text" name="ek_preis['+nfiles+']" value="" size="7" border="0"></td> <td width="60"><input style="text-align : right"
type="text" name="var_kosten['+nfiles+']" value="" size="7" border="0"></td>';
files.insertAdjacentHTML('BeforeEnd',adh);
return false;
}
</script>
Stichworte: -
Einen Kommentar schreiben: