Re: undefined index and php

From: Date: Thu, 10 Nov 2005 21:17:58 +0000
Subject: Re: undefined index and php
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-225549@lists.php.net to get a copy of this message
On Thu, November 10, 2005 5:54 am, Ross wrote: > Before someone advises me to 'google' my question. I have and can't > find a > PHP.net example either. > > I have turned off registered globals and am updating my scripts so > they work > but I keep getting an undefined index problem using $_POST > > I tried this to set the value... > > if (!isset($_POST['heading'])) { > $_POST ['heading'] = ""; > } > > because the following line give the notice 'undefined index' BEFORE > the > submit button has been pressed.. > > <? $heading_insert= stripslashes($_POST['heading']);?> This bit of code is getting run BEFORE the submit button has been pressed. In that case, $_POST itself is not defined, much less $_POST['heading'] You really shouldn't be stuffing values into $_POST. Think of it as a read-only variable that the browser sends TO you. Here are some options: OPTION 1: <?php $heading_insert = ''; if (isset($_POST['heading'])){ $heading_insert = stripslashes($_POST['heading']); } ?> OPTION 2: <?php $heading_insert = isset($_POST['heading']) ? stripslashes($_POST['heading']) : ''; ?> Some people think the ternary operator is "confusing" or "obscure" or whatever. Others think it's a perfectly natural operator. YMMV -- Like Music? http://l-i-e.com/artists.htm

« previous php.general (#225549) next »