Hello and welcome to our community! Is this your first visit?
Enjoy an ad free experience by logging in. Not a member yet? Register.
Results 1 to 3 of 3
  1. #1
    New Coder
    Join Date
    Dec 2011
    WInchester, Hampshire. UK
    Thanked 0 Times in 0 Posts

    Unexpected elseif PHP result

    I am passing variables from this page:


    From the property search section.

    When the variables are passed to:


    I want the property search at the top of the page to highlight your previous selections.

    I have used the following code in the form to populate the selection:

    <select name="st">
    <?php if ($st="ALL")
    {echo "<option value=\"ALL\" selected=\"selected\">All</option>";}
    elseif ($st="BUNG")
    {echo "<option value=\"BUNG\" selected=\"selected\">Bungalow</option>";}
    elseif ($st="COTT")
    {echo "<option value=\"COTT\" selected=\"selected\">Cottage</option>";}
    elseif ($st="FLAT")
    {echo "<option value=\"FLAT\" selected=\"selected\">Flat</option>";}
    elseif ($st="HOUS")
    {echo "<option value=\"HOUS\" selected=\"selected\">House</option>";}
    elseif ($st="STUD")
    {echo "<option value=\"STUD\" selected=\"selected\">Studio</option>";}
    <option value="ALL">All</option>
    <option value="BUNG">Bungalow</option>
    <option value="COTT">Cottage</option>
    <option value="FLAT" <?php if ($st="")
    {echo "<option value=\"FLAT\" selected=\"selected\">Flat</option>";}
    else {echo ">Flat</option>";} ?></option>
    <option value="HOUS">House</option>
    <option value="STUD">Studio</option>
    No matter what the value of st is the if command always echoes the "ALL" option. I have checked the value by echoing the value of st.

    The second PHP if command in the FLAT option is in case the person comes direct to the page and the string is empty.

    This is driving me mad any help would be really appreciated!


  • #2
    Senior Coder
    Join Date
    Feb 2011
    Your Monitor
    Thanked 506 Times in 493 Posts
    A little php 101 here..

    = is an assignment operator. That means you use it to assign a value to a variable which is what you are doing above.

    You want the == operator which COMPARES.
    My helpful sig is on vacation trying to loose some weight. It got a bit fat and caused a few problems but it will be back at some point!

  • Users who have thanked tangoforce for this post:

    sblatch (05-02-2013)

  • #3
    Regular Coder
    Join Date
    Jun 2009
    Thanked 19 Times in 19 Posts
    you are declaring a variable '=' instead of comparing '==' , should be

    PHP Code:
    if ($st=="ALL"
    you will need to update all of them to the comparison operator

    Edit: beaten too it by tango

  • Users who have thanked itxtme for this post:

    sblatch (05-02-2013)


    Tags for this Thread

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts