一般是在提交的时候所用的名字,在前面加一个$就可以了。不过php.ini里面可以设置不将提交的变量自动映射成为变量,这个时候你可以使用$HTTP_POST_VARS["变量名"] $HTTP_GET_VARS["变量名"]来进行变量的调用。

解决方案 »

  1.   

    两位大侠:先行谢过,但经过尝试,好象还是不行。请再指教。一。请问yorgo,
       1)如何改动php.ini使得提交的变量自动映射成为变量?   2)我也试过在diaocha.php中使用$name=$HTTP_GET_VARS["name"];
        echo "$name";结果显示$name='',
        why?二。请问ipman, 可否说得稍微详细一些呢?
        
        我试过将default.htm中加上:
       <form method="post" action="diaocha.php?a=name&b=email&c=choice"> 
        在diaocha.php中:  echo "$a $b $c";结果显示为空;
       
        再试着在diaocha.php中写上:default.htm?a=a=name&b=email&c=choice;
        结果显示“语法错误”!!!    到底该how to do???
    ——————————————————————————————
    以下是:defaul.htm
    <HTML>
    <HEAD> 
    <TITLE> New Document </TITLE>
    </HEAD> <BODY BGCOLOR="#CCCCCC"><center> 
    <h1>您喜欢吃什么水果</h1> 
    <form method="post" action="diaocha.php">  //我曾改过这里
    <table border>
    <tr><td>姓名:
    <td>
    <input type="text" name="name" size="20" maxlength="20" value=""> 
    <tr><td>Email: 
    <td>
    <input type="text" name="email" size="20" maxlength="20" value=""> 
    <tr><td>请您选择: 
    <td> 
    <input type="radio" name="choice" value="apple">苹果
    <input type="radio" name="choice" value="orange">橙子
    <input type="radio" name="choice" value="pear">梨子 
    <br> 
    <input type="radio" name="choice" value="coconut">椰子
    <input type="radio" name="choice" value="watermelon">西瓜
    <input type="radio" name="choice" value="banana">香蕉
    </table>
    <p>
    <input type="submit" name="submit_button" value="确定"> 
    <input type="reset" name="reset_button" value="重置">
    </form></BODY>
    </HTML>________________________________________
    以下是diaocha.htm:<?php
    /* 定义一些相关变量,供下面的mysql_connect()函数用 */
    $hostname="cherry";
    $username="sa";
    $password=""; 
    $dbname="mydb";$name=$HTTP_GET_VARS["name"];  //我曾改过这里。
    $email=$HTTP_GET_VARS["email"];  //我曾改过这里。
    $choice=$HTTP_GET_VARS["choice"];  //我曾改过这里。echo "hello $a $b $c"; //我曾改过这里。/* 用来储存站点主管的email地址*/
    $adminaddress="[email protected]"; /* 这是我们刚建立的表,用来储存用户数据*/
    $userstable="infostar" ;/* 下面建立连接 */
    $id=mssql_connect($hostname,$username,$password) ;/* 下面选择数据库mydb,在函数前加上(@)符号将会抑制错误信息的显示.*/
    @msSQL_select_db("$dbname")or die("Unable ro select database");print"<center>";
    print"您好:$name.";
    print"<br><br>";
    print"您的Email是:$email<br><br>";
    print"谢谢您的参与<br><br>";
    /* 把信息插入到表infostar中 */
    /* 因为前面用msSQL_select_db函数选取了数据库表.所以,下面就不需在输入表名 */
    $query="INSERT INTO $userstable VALUES('$name','$email','$choice')";
    echo "$query";
    $result=msSQL_query($query);print"您的信息我们已经保存到数据库中.";/* 关闭数据库连接 */
    msSQL_close();
    ?> 
    _______________________________________________有劳二位!若有其他大侠知晓,还望不吝赐教!
      

  2.   

    你检查一下文件名是否错了:
        处理表单的程序必须以 .php或.php3开头,任何 <? .... ?>的php程序
    不能包含在  .htm 中,其无法解释执行。
        所以你的表单程序文件名为:diaocha.php 
      

  3.   

    sorry,我写帖子时写错了,就是diaocha.php! 多谢指出!
    但问题还是没有解决呀!!!急死我了!!!
      

  4.   

    $name=$HTTP_POST_VARS["name"]
    不是$name=$HTTP_GET_VARS["name"]    
      

  5.   

    谢谢benlu及各位大侠!后来我将php.ini重新拷贝了一个,只改以下两处,
    extension_dir = c:\php\extensions\
    extension=php_mssql70.dll
    再将WIN2000重启,就发现可以直接用$name $email等引用了。不过,又发现了一个更大的问题!
    不知IIS4.0和PHP有什么矛盾,总之该程序(或者说所有的PHP程序),只能执行一两遍后,
    CPU就会被一个叫做inetinfo.exe的进程占用到100%。于是IE就不再能访问自己的站点了,计算机也变得及慢。不得不重启,这,又是为何?????各位高手,不知是否可以援手???谢谢!谢谢!