-2

这里需要一些帮助 - 我有一个向用户提供数据的表格:用户可以选择更新表格。如果表已更新,我想生成一封包含该(更新的)数据的电子邮件。到目前为止清楚吗?

当我运行代码时,它会更新数据库,但会发送以下错误 -

Fatal error: Function name must be a string in C:\xampp\htdocs\mlac\mlac_member2.php on line 226

好的 - 这是相关的代码(我省略了其余的,因为它没有增加这个问题):

<?php

if (isset($_GET['view']))
    {
    $user = sanitizeString($_GET['view']);




    $data = "SELECT * FROM names WHERE id='$user'";
    $result=mysql_query($data) or die(mysql_error());

    while($row=mysql_fetch_array($result)){

?>

html

    <caption>Personal Record</caption>

<tr>
<th>ID</th>
    <td><?php
        echo $row['id'];
     ?></td>
</tr>

<tr>
<th>Name</th>
    <td><?php
        echo $row['name'];
     ?></td>
</tr>

<tr>
<th>E-Mail</th>
    <td><?php
        echo $row['email'];
     ?></td>
</tr>

<tr>
<th>Main Telephone</th>
    <td><?php
        echo $row['maintel'];
     ?></td>
</tr>

<tr>
<th>Mobile Telephone</th>
    <td><?php
        echo $row['mobtel'];
     ?></td>
</tr>

<tr>
<th>Organisation</th>
    <td><?php
        echo $row['organisation'];
     ?></td>
</tr>

<tr>
<th>Group Leader</th>
    <td><?php
        echo $row['group_leader'];
     ?></td>
</tr>

<tr>
<th>Supervisor</th>
    <td><?php
        echo $row['supervisor'];
     ?></td>
</tr>

<tr>
<th>Volunteer</th>
    <td><?php
        echo $row['volunteer'];
     ?></td>
</tr>

<tr>
<th>Assessor</th>
    <td><?php
        echo $row['assessor'];

        }
        }
     ?></td>
</tr>

</table>


    <br />
    <form method="post" action="update.php">
        <input name="Submit1" type="submit" value="Edit" style="width: 67px" /></form>

    <p>&nbsp;</p>

[/html]

<?php   

$to='xy@sth.com';
$subject='Test Script';

$name=$row('name');
$email=$row('email');
$phone=$row('mobtel');
$message=("Name:  ").$name. ("\r\n") . ("Email:  ") .$email . ("\r\n") . ("Phone:  ")    .$phone;


mail($to,$subject,$message);

?>

如果有人可以提供帮助,我将不胜感激。

问候,

4

2 回答 2

1

$row不是一个函数,它是一个数组(我猜)。

$name=$row['name'];
$email=$row['email'];
$phone=$row['mobtel'];
于 2012-04-21T09:55:34.927 回答
0
$name=$row['name'];
$email=$row['email'];
$phone=$row['mobtel'];

bažmegakapa 所说的是正确的......并且还删除了下一行中的括号。

$message="Name:  ".$name. "\r\n" . "Email:  " .$email . "\r\n". "Phone:  ".$phone;

如果您想在邮件中添加标题,请尝试这样

$headers1  = "MIME-Version: 1.0\r\n";

$headers1 .= "Content-type: text/html; charset=iso-8859-1\r\n";

$headers1 .= "From: $fromurl\r\n";



@mail($to, $subject , $message, $headers1);
于 2012-04-21T10:16:19.747 回答