Multidimensional array problems in $_POST
Posted on
16th Feb 2014 07:03 pm by
admin
I'm having trouble with a three-dimensional $_POST array. It starts as a two-dimensional array on this side:
Code: <html>
<head>
<title>test</title>
<script type="text/javascript">
var Dom = {
get: function(el) {
if (typeof el === 'string') {
return document.getElementById(el);
} else {
return el;
}
},
add: function(el, dest) {
var el = this.get(el);
var dest = this.get(dest);
dest.appendChild(el);
},
remove: function(el) {
// var el = this.get(el);
// el.parentNode.removeChild(el);
}
};
var Event = {
add: function() {
if (window.addEventListener) {
return function(el, type, fn) {
Dom.get(el).addEventListener(type, fn, false);
};
} else if (window.attachEvent) {
return function(el, type, fn) {
var f = function() {
fn.call(Dom.get(el), window.event);
};
Dom.get(el).attachEvent('on' + type, f);
};
}
}()
};
Event.add(window, 'load', function() {
var i = 2;
Event.add('add-element', 'click', function() {
var el = document.createElement('span');
el.innerHTML = '<input type="text" name="theArray['+i+']['name']" value="">';
i++;
Dom.add(el, 'content');
Event.add(el, 'click', function(e) {
Dom.remove(this);
});
});
});
</script>
</head>
<body>
<p id="add-element">Add Elements</p>
<form action="testPost.php" name="test" method="post">
<input type="text" name="theArray[1]['name']" value="foo" />
<input type="text" name="theArray[2]['name']" value="bar" />
<div id="content"></div>
<input type="submit" name="submit" value="submit" />
</form>
</body>
</html>
(If you're wondering why I only have one element it's because this is for a project where I will need nested lists later.)
Now, onto testPost.php to process the code:
Code: <html>
<head>
<title>asdfdf</title>
</head>
<body>
<ul>
<?php
for ($i=1;$i<=count($_POST["theArray"]);$i++){
echo("<li>".$_POST['theArray'][$i]['name']."</li>");
}
?>
</ul>
</body>
</html>
$_POST itself is an array, so we convert from a two-dimensional to a three-dimensional array. For some reason, only the first letter gets printed; the rest of the string gets truncated.
My only request is that you don't suggest I just use a database or something of the like. This has to be easily portable and I will probably merge this into one document later.
Thank you
Your Answer:
Login to answer
99 49
Other forums
Simple MySQL query...
Hello,
How could I do a mysql query that does this: SELECT * WHERE date/time < 5minutes ag
How to generate a text file using php...?
Hi,
Can anyone give me code to generate a text file using php
Thanks in advance
Track downloads' status
Hello,
I need to make somehow, some system, to track whether downloads are completed or faile
how make 2 column in table with data tybe long row
hi every one
I want make in my table 2 column with data tybe long raw
how thi
how to hide input fields on selection screen using variant attribute
Hello all,
I want to know how to hide input fields on selection screen using variant attr
building a function with multiple outputs
I want to build a function that has multiple outputs.
I know but am not to sure how I should
Not Inserting into DB
I can't get my Add new Division form to submit to the database. Anyone see my issue?
Code: &a
PHP and XML image gallery variable issue
I'm trying to display the large image on the same page as the thumbnails, to do that I'm passing a v
Will this protect from mysql injection?
I do not want anything like DROP TABLE to work or any type of coding..
Heres my code.. is it
Checkbox info wont include in Mailto
Hey, im new to php.
Basically I have made a form to request which type of job(s) are needed, whic