Sending multiple variable to flash

I did the following in passing several multiple to flash
PHP code
<?php
     $d  = array();
     $p = array();
     $t = array();
     require_once('C:\xampp\htdocs\moodle\config.php');
    $data = $DB->get_records_sql('SELECT questiontext,id FROM {question}');
    foreach ($data  as $element)  {
    $d[] = $element->questiontext ;
    $p[] = $element->id;}
    echo "var1=".urlencode($d[1])."&var2=".urlencode($p[1]);
?>
Actionscript code
var myLoader:URLLoader = new URLLoader();
myLoader.dataFormat = URLLoaderDataFormat.TEXT;
var myRequest:URLRequest=new URLRequest("http://localhost/moodle/selectquestion.php");
myLoader.load(myRequest);
myLoader.addEventListener(Event.COMPLETE,onCompleteHandler);
var myValue: String;
var valuetwo: String;
function onCompleteHandler(e:Event):void{
   myValue = e.target.data.var1;
                      valuetwo = e.target.data.var2;
   trace(myValue);
   trace(valuetwo);
However, error shows in actionscript that
ReferenceError: Error #1069: Property var1 not found on String and there is no default value.
Is there anything wrong in my php code or in the actionscript? How should I pass multiple variable to flash?

I can fix it now as I should add
var myvariable: URLVariables = new URLVariables(e.target.data);      
to my actionscript code and then
myValue = myvariable.var1;
valuetwo = myvariable.var2;
trace(myValue);
trace(valuetwo);
I can then trace back.

Similar Messages

  • Web service sends multiple requests after flash upgrade

    I have a Xcelsius engage 2008 SP3 FP2 and i just found out that my dashboard send multiple reqests to web service and this will render my dashboard useless. This is a major bug, is there any solution? Service methods will get around 2-20 request and the dashboard will not be usable any more. Triggers are correct and will not trigger web service unless button is clicked.

    Dear Expert,
    Tcode RZ10
    set the parameter rdisp/gui_auto_logout = 30M    in all Instance profiles  / orwhat ever time limit u want to specify.
    See that this parameter is set on each server.
    And you can make it a default.
    Regards,
    Shankar K B
    Edited by: Shankar.kb on Feb 19, 2012 2:25 AM

  • Sending php variables to Flash Builder

    Hi guys,
    I have made a form which when sent to a Mysql server adds a table to a database.
    Here is the code that I use in Flash Builder:
    <mx:HTTPService id="srv" url="http://mysite.com/addTeam.php" method="POST">
    <mx:request>
    <teamName>{teamName.text}</teamName>
    <city>{city.text}</city>
    </mx:request>
    </mx:HTTPService>
    ...<mx:Form x="25" y="10">
    <mx:FormHeading label="Add a team"/>
    <mx:FormItem label="Team name">
    <s:TextInput id="teamName"/>
    </mx:FormItem>
    <mx:FormItem label="City">
    <s:TextInput id="city"/>
    </mx:FormItem>
    <mx:FormItem>
    <s:Button label="Add" click="srv.send()"/>
    </mx:FormItem>
    And here is my addTeam.php file:
    <?php
      $teamName = $_POST['teamName'];
      $city = $_POST['city'];
      $addteam = $teamName ." ". $city;
      $connection = mysqli_connect("host", "username", "password", "db") or die(mysqli_connect_error());
      mysqli_query($connection, "SET CHARACTER SET utf8");  //the added table will be in bulgarian language
      $sql = "CREATE TABLE `$addteam`
      FirstName varchar(20),
      SurName varchar(20),
      LastName varchar(20),
      position varchar(20),
      price int
      mysqli_query($connection, $sql) or die ("Query failed: " . mysqli_error($connection));
    ?>
    My question is: How can I return some text to Flash Builder if the query was successful or failed (like "echo") so that the user (admin in this case) knows what is going on and not just clicking the add button and having to go to phpmyadmin to see if the table has been created or not?

    You have this declared
    <mx:HTTPService 
    id="srv" url="http://mysite.com/addTeam.php" method="POST">
    just add
    result="yourResultHandler()"/>
    then create the function that would handle the result.
    <mx:HTTPService 
    id="srv" url="http://mysite.com/addTeam.php" method="POST" result="yourResultHandler(event)">

  • Sending multiple variables in chart url

    HI, I have aseries of charts where users can drill down into
    the data. That's fine.
    The problem is the first graph is based on users form
    selections, which are used in the chart query as url variables. How
    do I then pass those variables when I drill down into the chart
    using cfchart url????
    Hope that's clear. Code below
    Thanks
    <cfquery name="Domicile" datasource="MI" maxrows="20">
    select count([06Student]) as stucount, domicileDesc
    from tbl_StudentRecord, tbl_People, LUtbl_Domicile,
    LUtbl_FeeStatus, IMPtbl_Programmes
    where tbl_StudentRecord.[06PersonNo] = tbl_People.PersonNo
    and tbl_People.Domicile = LUtbl_Domicile.DomicileCode
    and tbl_StudentRecord.[06FeeStatus] =
    LUtbl_FeeStatus.FeeStatus
    and tbl_StudentRecord.[06Programme] =
    IMPtbl_Programmes.Programme
    and Faculty in ('#url.fac#')
    Group by DomicileDesc
    ORDER BY count([06Student]) DESC
    </cfquery>
    <cfchart chartwidth="700" chartheight="400"
    url="school/Filter_All_Domicile_Sch.cfm?item=$itemlabel">
    <cfchartseries type="bar" query="Domicile"
    itemcolumn="DomicileDesc" valuecolumn="stucount"
    ></cfchartseries>
    </cfchart>

    iirc, just like you normally would with any url variable: by
    appending
    it to the url
    in your case that would be the url attribute of cfchart tag:
    url="school/Filter_All_Domicile_Sch.cfm?item=$itemlabel$&faculty=#url.fac#
    Azadi Saryev
    Sabai-dee.com
    http://www.sabai-dee.com

  • Send variable into flash macromedia

    Hi,
    I would send a variable into flash macromedia.
    I explain my problem. I created an flash wherein i send a word into a variable called lol and i read this varibale in a other variable called dis.
    But in labview i dont know how i can send this word into lol and read into dis.
    I did many research and i made a .vi who could be functional. 
    can you help me to see where is my error in this .VI.
    Thanks. 
    Solved!
    Go to Solution.
    Attachments:
    flash and prog.zip ‏40 KB

    Hi danylolo,
    You could use a web service between Flash and LabVIEW to pass your data? You'll certainly have to develop an adapter for Flash.
    Romain P.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    >> NIDays 2011, le mardi 8 février au CNIT de Paris La Défense

  • LoadVars-using send to pass a variable from flash to php

    For the life of me, I've tried everything:
    I've researched LoadVars on Adobe forum, used David Powers'
    books, googled 'flash to php', LoadVars, etc. and tried
    sendAndLoad, send, and using $_POST, $_GET, $_REQUEST.
    $HTTP_POSTVARS but I keep getting this same error. any advice
    please?
    I have a Unix server running Apache/PHP 4 - LoadVars worked
    to load name-value pairs into an array -see thread)
    My goal with this simple app is to prototype being able to
    pass a variable from flash to a variable in php.
    Parse error: syntax error, unexpected T_VARIABLE in
    flash_to_SQL.php on line 5
    Actionscript 2.0 code:
    var c :LoadVars = new LoadVars();
    c.testing = "123FOUR";
    c.send ("
    http://127.0.0.1/flash_to_SQL.php","_self","POST");
    php code: (I also tried $_POST, $_GET, $_REQUEST.
    $HTTP_POSTVARS)
    <?php
    //mysql 4.1.2, php 4 , NO mysqli
    ecbo $_REQUEST ['testing'];
    /?>

    var formData:LoadVars = new LoadVars();
    formData.fname = "Name";
    formData.send("
    http://www.website.com/flash_php.php",
    formData, "POST");
    <?php
    $name = $_POST['fname'];
    echo $name;
    ?>

  • Send variable to Flash from HTML link

    Does anyone know if it's possible to include a variable in an
    html link <a> tag that can set a variable in Flash. I have
    used JavaScript to do this in the past but would prefer not to on
    this site. I also would prefer not have to use a server side script
    or xml, as all I want to do is set multiple links on one html page
    to open the same Flash movie on another html page, but make it go
    to a particular frame or load a particular external swf based on
    the link that was clicked. Thanks, JD

    You need to use them in the object and embed tags.
    Dan Mode
    --> Adobe Community Expert
    *Flash Helps*
    http://www.smithmediafusion.com/blog/?cat=11
    *THE online Radio*
    http://www.tornadostream.com
    *Must Read*
    http://www.smithmediafusion.com/blog
    "JDRives" <[email protected]> wrote in
    message
    news:efcb61$rkb$[email protected]..
    > Do I need to use Flash Vars in the object and embed code
    to load them in
    > or will they automatically be passed to the variable on
    the _root level of
    > the SWF file? Thanks for your quick reply, JD

  • [Forum FAQ] How do I send multiple rows returned by Execute SQL Task as Email content in SQL Server Integration Services?

    Question:
    There is a scenario that users want to send multiple rows returned by Execute SQL Task as Email content to send to someone. With Execute SQL Task, the Full result set is used when the query returns multiple rows, it must map to a variable of the Object data
    type, then the return result is a rowset object, so we cannot directly send the result variable as Email content. Is there a way that we can extract the table row values that are stored in the Object variable as Email content to send to someone?
    Answer:
    To achieve this requirement, we can use a Foreach Loop container to extract the table row values that are stored in the Object variable into package variables, then use a Script Task to write the data stored in packages variables to a variable, and then set
    the variable as MessageSource in the Send Mail Task. 
    Add four variables in the package as below:
    Double-click the Execute SQL Task to open the Execute SQL Task Editor, then change the ResultSet property to “Full result set”. Assuming that the SQL Statement like below:
    SELECT   Category, CntRecords
    FROM         [table_name]
    In the Result Set pane, add a result like below (please note that we must use 0 as the result set name when the result set type is Full result set):
    Drag a Foreach Loop Container connects to the Execute SQL Task. 
    Double-click the Foreach Loop Container to open the Foreach Loop Editor, in the Collection tab, change the Enumerator to Foreach ADO Enumerator, then select User:result as ADO object source variable.
    Click the Variable Mappings pane, add two Variables as below:
    Drag a Script Task within the Foreach Loop Container.
    The C# code that can be used only in SSIS 2008 and above in Script Task as below:
    public void Main()
       // TODO: Add your code here
                Variables varCollection = null;
                string message = string.Empty;
                Dts.VariableDispenser.LockForWrite("User::Message");
                Dts.VariableDispenser.LockForWrite("User::Category");
                Dts.VariableDispenser.LockForWrite("User::CntRecords");     
                Dts.VariableDispenser.GetVariables(ref varCollection);
                //Format the query result with tab delimiters
                message = string.Format("{0}\t{1}\n",
                                            varCollection["User::Category"].Value,
                                            varCollection["User::CntRecords"].Value
               varCollection["User::Message"].Value = varCollection["User::Message"].Value + message;   
               Dts.TaskResult = (int)ScriptResults.Success;
    The VB code that can be used only in SSIS 2005 and above in Script Task as below, please note that in SSIS 2005, we should
    change PrecompileScriptIntoBinaryCode property to False and Run64BitRuntime property to False
    Public Sub Main()
            ' Add your code here
            Dim varCollection As Variables = Nothing
            Dim message As String = String.Empty
            Dts.VariableDispenser.LockForWrite("User::Message")
            Dts.VariableDispenser.LockForWrite("User::Category")
            Dts.VariableDispenser.LockForWrite("User::CntRecords")
            Dts.VariableDispenser.GetVariables(varCollection)
            'Format the query result with tab delimiters
            message = String.Format("{0}" & vbTab & "{1}" & vbLf, varCollection("User::Category").Value, varCollection("User::CntRecords").Value)
            varCollection("User::Message").Value = DirectCast(varCollection("User::Message").Value,String) + message
            Dts.TaskResult = ScriptResults.Success
    End Sub
    Drag Send Mail Task to Control Flow pane and connect it to Foreach Loop Container.
    Double-click the Send Mail Task to specify the appropriate settings, then in the Expressions tab, use the Message variable as the MessageSource Property as below:
    The final design surface like below:
    References:
    Result Sets in the Execute SQL Task
    Applies to:
    Integration Services 2005
    Integration Services 2008
    Integration Services 2008 R2
    Integration Services 2012
    Integration Services 2014
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Thanks,
    Is this a supported scenario, or does it use unsupported features?
    For example, can we call exec [ReportServer].dbo.AddEvent @EventType='TimedSubscription', @EventData='b64ce7ec-d598-45cd-bbc2-ea202e0c129d'
    in a supported way?
    Thanks! Josh

  • How to send multiple data for a single element

    Hi All,
    I have a requirement where I have to send multiple data for single element per single transaction. For example
    Id details
    1 abcd
    1 efgh
    1 def
    Now, when I am selecting this ID from database, I have to get all the details in a single xsd like
    <id>1</id>
    ---><details>abcd</details>
    <details>efgh</details>
    <details>def</details>
    Thanks

    Hi,
    The following XSLT...
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:template match="/">
    <xsl:variable name="root" select="/"/>
    <root>
    <xsl:for-each select="distinct-values(/root/entry/id)">
    <xsl:variable name="id" select="."/>
    <entry>
    <id><xsl:value-of select="$id"/></id>
    <xsl:for-each select="$root/root/entry[id = $id]">
    <details><xsl:value-of select="details"/></details>
    </xsl:for-each>
    </entry>
    </xsl:for-each>
    </root>
    </xsl:template>
    </xsl:stylesheet>Will work for a document like this...
    <root>
    <entry>
    <id>1</id>
    <details>detail1</details>
    </entry>
    <entry>
    <id>1</id>
    <details>detail2</details>
    </entry>
    <entry>
    <id>2</id>
    <details>detail3</details>
    </entry>
    </root>Hope this helps...
    Cheers,
    Vlad

  • How to send multiple docs in soa suite 10g ?

    Hi All ,
    I am using Soa Suite 10g (10.1.1.3).
    I had a requirement to send multiple docs for single id. say for example, i have table emp and document and for single empid field i have multiple documents. i need to transform in such a way that details from emp along with multiple documents for the corresponding empid
    in emp table i have : empname , empid, dept, place
    in document table i have : empid1 document1,document2 , empid1 document3,document4
    means for the same emp id , i have two documents rows.
    I dont want send emp details multiple times, but for the single emp details i need to send multiple docs.
    say empid1,empname,dept,place and document1,document2,document3,document4
    i use transformation, multiple docs are not transforming, second details overiding my fitrst transformation.
    plese help me , how can i send multiple docs to another service
    Thanks in advance

    Hi,
    I must say that your explanation of your problem is a little fuzzy. But as far as I understand it, you would need an xsd of your external service with a list of documents per employee.
    The more or less simplest/straightforward way to do it is using a loop in BPEL. Then within an assign in the loop you could do:
    <copy>
    <from variable="inputVariable"
    query="/ns1:a/ns1:b/ns1:c"
    part="payload"/>
    <to variable="ServiceDocumentProperty"
    query="/ns22:Property/ns22:value"/>
    </copy>
    <bpelx:append>
    <bpelx:from variable="ServiceDocumentProperty"/>
    <bpelx:to variable="lServiceDocumentPropertyList"
    query="/ns22:PropertyList"/>
    </bpelx:append>
    I think you could do it as well in a transform, but then you should create a (set of) custom templates that traverses the source list of documents in a recursive way. For some examples you could read this article: http://blog.darwin-it.nl/2013/02/sending-and-saving-emails-in-soasuite.html. Because the difficulty in your case is (as I understand correctly) you have a detail table with 2 documents per row. What would be more logical and simpeler is if you would had 1 document per child-row.
    If you could redesign your source-model into a single document per row, then in the xslt-transform you could do just the for-each construct.
    Regards,
    Martien

  • Sending a variable to a cfm file

    I would like to send a variable from a Flash(Textfield) to a cfm (textfield). I use this in actionscript2 :
    variables_mc.Nom = "Francois";
    variables_mc.getURL ( "http://www.persomode.com/boutique/formulaire_perso.cfm?code_lg=lg_fr&num_formula ire=3", "_blank", "POST");
    In the cfm i have this :
    <input type="TEXT" name="Nom" id="Nom" value="" size="35"/>
    I just want change the value= "Francois".
    Example "Livedocs" in french: http://livedocs.adobe.com/flash/9.0_fr/main/wwhelp/wwhimpl/common/html/wwhelp.ht m?context=LiveDocs_Parts_bak&file=00001009.html
    When I want to send the code, nothing happens.
    What can I do?
    Thanks

    Okay no problem, I got it sorted! Not sure how exactly, I just seemed to start over again (with regards to the posting to a web page bit) and it fixed it.
    Have a play with it and give some feedback: http://www.rightjustified.co.uk/flash/squares/

  • PHP returning "undefined" variable to flash

    Hello Everyone, I am working on a touch screen POS login interface that takes in a four digit user pin and searches a database. It uses Flash, PHP and MYSQL. I need PHP to return the user name and access level. The AS3 code below is what I have so far, but it doesn't work correctly.
    "IntLogin" is the 4 digit pin that is sent to PHP when the user touches login on the GUI.
    function onLoginClick(e:MouseEvent):void
              keyLogin.gotoAndStop("KeyDn");
              var loader:URLLoader = new URLLoader();
              var request:URLRequest = new URLRequest("Login.php");
              var variables:URLVariables = new URLVariables();
              loader.dataFormat = URLLoaderDataFormat.VARIABLES;
              request.method = URLRequestMethod.POST;
              variables.login = intLogin;
              request.data = variables;
              trace(request.data = variables);
              loader.addEventListener(Event.COMPLETE, onComplete);
              loader.load(request);
               function onComplete(event:Event):void{
                        var loader:URLLoader = URLLoader(event.target);
                        var variables:URLVariables = new URLVariables(loader.data);
                        txtUser.text = variables.username;
    Next is the PHP code which works great in the browser when I implictly give $select a value, returning "username=Walker&access=1"
    However, when I run the program from Flash it returns an undefined variable and the end of the PHP file.
    <?php # Login.php
    require_once ('mysqli_connect.php');
    //Connect to the db
    if (!empty($_POST['login'])){
              $select = $_POST['login'];
              $sql = "SELECT Last_Name AS name, Access_Level AS level FROM Users WHERE User_ID = '$select'";
              $q = mysqli_query($dbc, $sql);
              if($q){
                        $row = mysqli_fetch_array($q, MYSQLI_ASSOC);
                        $name = $row['name'];
                        $access = $row['level'];
                        echo "username=$name";
      echo "&access=access";
    ?>
    I have have tried debugging the both the PHP and the AS code, but I am stuck. When I trace in AS3 I get the following:
    1445
    login=1445
    undefined
    $access";
    ?>
    Please if you anyone can help with this it would be greatly appreciated. I am on a strict timeline and I don't know what to do here.
    Thanks:)
    Jusmark

    You have to send it as a flash var
    Take a look at the code on my php webpage:
    http://www.spectacularstuff.com/php-test/inprogress/scrfix/home.php
    That is how I sent it to flash. Now, we want to receive it in
    flash. You need the following actionscript in AS3.
    // Display FlashVar onto webpage to ensure we are
    // receiving it
    var tf:TextField = new TextField();
    tf.autoSize = TextFieldAutoSize.LEFT;
    tf.border = false;
    tf.x = 50;
    tf.y = 10;
    addChild(tf);
    // Detect the FlashVar from the webpage
    try {
    var keyStr:String;
    var valueStr:String;
    var paramObj:Object =
    LoaderInfo(this.root.loaderInfo).parameters;
    for (keyStr in paramObj) {
    valueStr = String(paramObj[keyStr]);
    if (keyStr.indexOf(".") != -1){
    keyStr = keyStr.substring(0, keyStr.indexOf(".")); //now
    it's "home"
    // tf.appendText(keyStr);
    } catch (error:Error) {
    // tf.appendText(error);

  • Sending multiple email for free goods item category??

    Hi,
    we have requirement to send email (Z report in smartforms) automatically when sale order save in tcode VA01/VA02.
    we made reqd config in tcode NACE and we set access sequence on ORDER TYPE and it's working fine. but the problem is that when order booked for item category free goods it sends multiple emails. (i.e. no. of line items = no. of email) for one order no. All other item category is working fine. only problem with the free goods.
    I am an abaper. all config are made with the consent of SD consultant.
    pls help.
    thanks
    Radhashyam Sahoo.

    If you are an ABAPer, then it sounds like you simply need to debug the processing to identify where/why the fault occurs.  As for the NACE settings, you should understand the config as well as your functional counterpart.  It will make you a better developer and help you understand the processing code.

  • I have tried a lot to find an app or some way in email to attach multiple of pdf files in one email. I could not find anything that sends multiple pdf file in one email and still keeping the file in simple pdf format for the recipient.

    I have tried a lot to find an app or some way in email to attach multiple of pdf files in one email. I could not find anything that sends multiple pdf file in one email and still keeping the file in simple pdf format for the recipient.

    I am not aware of a way except for photos that allows you to select multiple files in an email. I even checked settings in the Adobe Reader app, and it does not show that ability.

  • How to check empty string and null? Assign same value to multiple variables

    Hi,
    1.
    How do I check for empty string and null?
    in_value IN VARCHAR2
    2. Also how do I assign same value to multiple variables?
    var_one NUMBER := 0;
    var_two NUMBER := 0;
    var_one := var_two := 0; --- Gives an error
    Thanks

    MichaelS wrote:
    Not always: Beware of CHAR's:
    Bug 727361: ZERO-LENGTH STRING DOES NOT RETURN NULL WHEN USED WITH CHAR DATA TYPE IN PL/SQL:
    SQL> declare
      2    l_str1   char (10) := '';
      3    l_str2   char (10) := null;
      4  begin
      5  
      6    if l_str1 is null
      7    then
      8      dbms_output.put_line ('oh STR1 is null');
      9    elsif l_str1 is not null
    10    then
    11      dbms_output.put_line ('oh STR1 is NOT null');
    12    end if;
    13  
    14    if l_str2 is null
    15    then
    16      dbms_output.put_line ('oh STR2 is null');
    17    elsif l_str2 is not null
    18    then
    19      dbms_output.put_line ('oh STR2 is NOT null');
    20    end if;
    21  end;
    22  /
    oh STR1 is NOT null
    oh STR2 is null
    PL/SQL procedure successfully completed.
    SQL> alter session set events '10932 trace name context forever, level 16384';
    Session altered.
    SQL> declare
      2    l_str1   char (10) := '';
      3    l_str2   char (10) := null;
      4  begin
      5  
      6    if l_str1 is null
      7    then
      8      dbms_output.put_line ('oh STR1 is null');
      9    elsif l_str1 is not null
    10    then
    11      dbms_output.put_line ('oh STR1 is NOT null');
    12    end if;
    13  
    14    if l_str2 is null
    15    then
    16      dbms_output.put_line ('oh STR2 is null');
    17    elsif l_str2 is not null
    18    then
    19      dbms_output.put_line ('oh STR2 is NOT null');
    20    end if;
    21  end;
    22  /
    oh STR1 is null
    oh STR2 is null
    PL/SQL procedure successfully completed.
    SQL> SY.

Maybe you are looking for

  • My mic is not working with my soundblaster digital music LX ex-soundc

    Hope its a easy problem but make me mad that I have a wonderfull sound from my digtal music XL soundcard but I am unable to use my microphone which is together with my web cam. I try seperate one but still I couldnt get any sound. I have DELL Inspiro

  • Paymen Proposal Could Not Be Carried Out

    Hi to all I am posting an expenditure transaction by using the t code RVND for yourself cheque creation with out vendor creation  and one entry is generating in background. the enry is Expense a/c                    DR clearing a/c for payment CR The

  • German characters not displaying correctly when redaing from URLConnection

    I have a java file reading the contents of a generated jsp page and writing to an html file and I have the code below doing that. However a couple of German characters like �, � and � are being changed to � in the html file. I tried to set the encodi

  • VOCAL EFFECT QUESTION

    Can anyone help me figure out how to get the effect used on that e-40 featuring t-pain "u and dat" song? It's the electronic sounding effect on t-pain's voice while he's singing. I think Cher andd a bunch of other artists have used it before. I'd rea

  • How to Create Icon Get Adobe Reader

    How to create Icon "get Adobe reader" at my free website [link removed] for visitor downloading the price list brochure with adobe. Please help. Thanks