Hi Paul

Try  print $instrument."number";

jack

-----Original Message-----
From: Paul Evans [mailto:[EMAIL PROTECTED] 
Sent: Friday, October 29, 2004 9:45 AM
To: [EMAIL PROTECTED]
Subject: [PHP] Parsing a concatenated variable and string?


Hi,

 I am new to PHP and cant seem to find a way to parse a concatenated string
and variable.

 To explain:

 I have a database to catalogue a composers works, one of the tables has a
list of instruments which I then access to dynamically display on a wep page
using checkboxes - if a particular instrument is used in the work then the
checkbox is checked.

 <?php

 //Select all instruments from the instrumentTbl in the correct order

 $resultInstrument = mysql_query("SELECT * FROM instrumentTbl ORDER BY
sort_order"); 

 //Load them into an array

  if ($myrowInstrument = mysql_fetch_array($resultInstrument)) {  do {  echo
$myrowInstrument['instrument'];  echo ": ";

 ?>
  
 //This creates a checkbox for each instrument in the database

  <input name="<?php echo $myrowInstrument['instrument']; ?>"
type="checkbox" value="<?php echo $myrowInstrument['instrument']; ?>">

 So far so good.

 The problem I am having is when I want to insert the number of instruments
used in the work.


 <input name="<?php echo $myrowInstrument['instrument']; ?>number"
type="text" size="3">

 This snipet of code produces a dynamically created form where the user can
enter the number of instruments required. (Ie 2 flutes)  

 Here is a part of the form created from the code above for the instrument
Flute:

 <input name="Flutenumber" type="text" size="3">

 To process the information in this form I think I need to concatenate
$instrument with the string 'number'.  the only problem is that PHP reads
this literally and the output is just $Flutenumber and not the number
actually entered.

 Here is the code I have at the moment


 <?php

 $resultInstrument_id = mysql_query("SELECT * FROM instrumentTbl ORDER BY
sort_order"); 

     while ($myrowInstrument_id = mysql_fetch_array($resultInstrument_id))
     {
     $instrument = $myrowInstrument_id['instrument'];

 if (strlen ($$instrument !='0'))
   { 
 //this works fine and gives a list of all the checked instruments  print
$$instrument;

 //this just outputs the literal interpretation ie it will print
$Flutenumber not the actual number entered on the form.

 print  "$${$instrument}number";

     }
 }

 ?>

 Any help would be greatly appreciated.

 Thanks,
 Paul.

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to