Dave W wrote:
I'll show you all the steps it passes through. Here's the form:<form action="proc.php" method="post"> <fieldset> <label for="Motto">Motto:</label><input class="text" type="text" size="25" name="motto" value="<?php if($form->value("motto") == ""){echo $session->nationinfo['motto']; }else{ echo $form->value("motto"); } ?>" /> <label for="desc">Nation Description:</label> <textarea name="desc" cols="50" rows="5"><?php if($form->value("desc") == ""){ echo $session->nationinfo['desc']; }else{ echo $form->value("desc"); } ?></textarea> <input type="submit" value=" Edit Nation " /> </fieldset> </form>It's echoing the nationinfo right, but its not posting it. The motto also works too. When it's submitted, it goes through the function procEditNation().$session->editNation($_POST['motto'], $_POST['desc']); The editNation function: function editNation($motto, $desc){ global $database, $form;if($motto){$field = "motto"; $motto = htmlspecialchars($motto); $database->updateNationField($this->username,"motto",$motto);} if($desc){$field = "desc"; $desc = htmlspecialchars($desc); $database->updateNationField($this->username,"desc",$desc);} return true;} Then finally the updateNationField function: function updateNationField($username, $field, $value){$q = "UPDATE nations SET ".$field." = '$value' WHERE username = '$username'";return mysql_query($q, $this->connection); }I just don't know what's wrong since it's posting the motto (which is just a text-type input) and not the description (which is a textarea). I echo'd out the mysql queries and excuted them myself from what echo'd out and it's selecting the desc column just fine.
That definitely all looks fine. If you do: echo 'post vars: ' . print_r($_POST, true) . '<br/>'; does it show up in post at all? -- Postgresql & php tutorials http://www.designmagick.com/ -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
