dipps
Goto Top

POST Abfrage mit variablen Zahlen

POST Abfrage mit variablen Zahlen

Hallo Ich habe ein Formular wo viele kleine Inputs sind die von der PHP namen wie 1.1 oder 23.5 oder 58.7 und so bekommen.
wenn ich das POST dann auslesen möchte von Bsp. 25.5 habe ich 2 Variablen mit den Zahlen drin wo $z=25 ist und $s=5 daraus mache ich $zell=$z.".".$s
Bsp $zell="25.5" Wenn ich $_POST['$zell'] mache geht es nicht was kann ich da noch machen?

Content-ID: 157432

Url: https://administrator.de/forum/post-abfrage-mit-variablen-zahlen-157432.html

Ausgedruckt am: 09.04.2025 um 09:04 Uhr

Xaero1982
Xaero1982 22.12.2010 um 13:12:54 Uhr
Goto Top
Hi und hä?

schick mal den Code rüber, weil ich glaube das versteht keiner ...

Hoffe dir ist aber klar, dass $zell und $_POST['Variable'] zwei Latschen sind.

Zumal dein
 $_POST['$zell']   
falsch ist...

Du kannst höchstens
 echo $zell; 
machen, aber mehr auch nicht ...

VG
Dipps
Dipps 22.12.2010 um 13:33:13 Uhr
Goto Top
Also ich Habe ein Inputs mit Namen
1.3 und 1.4 .... 20.3 und 20.4 und 20.5 und 20.6 ..... und soweiter
<form method="POST" action="<?=$_SERVER['SCRIPT_FILNAME'];?>">  
input's  
<input type="submit"><input type="hidden" name="send" value="1">  
</form>
Beim Drücken des Button
<?
session_start();
$z=1;
$s=0;

if($_POST['send']==1)  
{

foreach($_SESSION['csv'] as $arr){  

foreach($arr as $arra){

$zell=$z.".".$s;  

echo $_POST['$zell'];  

$s++;
}
$z++;
$s=0;
}
}
?>
Bei echo $_POST ist jetzt nur zu Test ich möchte die Variable da weiter verarbeiten. Normal sind die Inputs über $_POST['2.5'] und soweiter ereichbar
takecx
takecx 22.12.2010 um 14:52:23 Uhr
Goto Top
Auch wenn ich Deine Frage nicht verstehe, vielleicht meinst Du $_POST[$zell] ?
Dipps
Dipps 22.12.2010 um 15:10:13 Uhr
Goto Top
das möchte ich ja anwenden geht aber nicht wenn ich $_POST[$zell] mache wenn ich aber das Händisch mache mit $_POST[25.2] geht es
Xaero1982
Xaero1982 22.12.2010 um 16:15:17 Uhr
Goto Top
Ich wiederhole mich zwar ungerne, besonders wenn es schon oben schriftlich festgelegt und scheinbar wieder nicht gelesen wurde (sowas kenn ich nur von Kundenbetreuern im www etc.)

Es gibt in deinem Code KEINE Variable: $_POST[$zell], denn deine Variable heißt einfach nur $zell!

$zell=$z.".".$s;   

Deswegen ist das:
echo $_POST['$zell'];   
Unsinn und muss
 echo $zell;
heißen.

Die einzige Variable die bei dir in $_POST steht ist "send", weil du in deinem Formular nichts anderes übergeben hast, zumindest nach dem hier vorliegenden Code.

Also bitte oben genannten Code anpassen...

Es ist immer schwer zu helfen, wenn man gar nicht weiß was das ganze eigentlich bezwecken soll.

VG
Arano
Arano 22.12.2010 um 19:04:06 Uhr
Goto Top
Moin moin face-smile

Ist alles ganz einfach:
Du kannst ja mal ein "print_r($_POST)" einbauen und schauen was alles übertragen und warum deine Variable nicht gefunden wird !

Dann hättest du gesehen das deinen Feldnamen z.B. "25.5" zu "25_5" geworden sind den...
Punkte sind in Variablennamen nicht erlaubt ! (PHP-Manual) '[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'
<?php
// Falscher Variablenname
$variableMit.Punkt = "Wert";  
// Parse error: syntax error, unexpected '=' 
?>

Du musst dir also andere Namen für deine Felder ausdenken !


~Arano
Dipps
Dipps 22.12.2010 um 19:19:01 Uhr
Goto Top
Ich habe es jetzt hinbekommen auch mit Punkt ich habe den namen auf name="input25.5" genannt und mit $_POST["input".$z.".".$s] bekomme ich dann auch die ausgabe
Arano
Arano 22.12.2010 um 19:35:05 Uhr
Goto Top
Hm... komisch !

Bekomme ich nicht hin !?
<?php

$a = 25;
$b = 5;


echo '___________________________________<br>'.  
     '<pre style="width:400px; height:100px;">';  
       print_r($_POST);
echo '</pre><br>'.  
     '___________________________________<br>'.  
     '<br>'.  
     'Var = '.$_POST["input".$a.".".$b].'<br>';  

?>

<form method="POST">  
  <input name="input25.5" value="treffer">  
  <input type="submit">  
</form>
ergibt bei mir:
___________________________________

Array
(
    [input25_5] => treffer
)

Notice: Undefined index: input25.5 in /srv/vhosts/test/www/dipps/index.php on line 13

___________________________________

Var = 
Was ich auch als richtiges verhalten empfinde, denn nach wie vor ist der Punkt __kein__ gültiges Zeichen und (sollte) von PHP duch ein "_" ersetzt werden.

Machst du noch etwas anders ?


~Arano
Dipps
Dipps 22.12.2010 um 21:56:53 Uhr
Goto Top
Stimmt ich hatte den . ja auch gegen ein - ausgetauscht habe ich leier nicht genau betrachtet jetzt
Arano
Arano 22.12.2010 um 22:03:16 Uhr
Goto Top
Hehe...

...man gut das ich einkaufe, statt weiter herumprobieren war face-smile

Dann setzt doch noch den Hacken bei "gelöst" und ein paar schöne Feiertage .


~Arano