0

很高兴能和各位天才在一起,这是我在这里的第一个问题。

我创建了一个 Web 服务,用于将数据从 android 插入到我的 PHP Web 服务器(本地服务器)上的 MySQL 表中。我实现了这一点,但我不知道如何显示我刚刚插入的新数据(MySQL 表中的新行)。

我需要该表的新行,以便通过会话将其传输到另一个 PHP 页面。 我为您提供我的代码,请原谅我的英语:

<?php
    session_start();
?>
<?php
    $b1= $_REQUEST['name_mobinaute'];
    $b2= $_REQUEST['cin_mobinaute'];
    $b3= $_REQUEST['email_mobinaute'];
    $b4= $_REQUEST['code_bancaire_mobinaute'];
    $b5= $_REQUEST['date_transaction_mobinaute'];

    $_SESSION['name_mobinaute'] = $b1; 
    $_SESSION['cin_mobinaute'] = $b2; 
    $_SESSION['email_mobinaute'] = $b3; 
    $_SESSION['code_bancaire_mobinaute'] = $b4; 
    $_SESSION['date_transaction_mobinaute'] = $b5;

    show  $_REQUEST['name_mobinaute'];
    show  $_REQUEST['cin_mobinaute'];
    show $_REQUEST['email_mobinaute'];
    show $_REQUEST['code_bancaire_mobinaute'];
    show $_REQUEST['date_transaction_mobinaute'];

    // Connexion au serveur de base de données
    $connect_result = mysql_connect("localhost", "root", "azertga");

    if (!$connect_result) {
        echo("Impossible de se connecter au serveur de bases de données.<br>\n");
    } else {
        echo("Connecté au serveur de bases de données!<br>\n");
        // Selection de la base de données
        $select_result = mysql_select_db("mediashore");
    }

    if (!$select_result) {
        echo("Impossible de se connecter à la base de données.<br>\n");
    } else {
        echo("Connecté à la base de données!<br>\n");
    }

    $sql=mysql_query("INSERT INTO clients_megamadou (C_nom, C_email, c_adresse, c_ncin) VALUES ('".$_REQUEST['name_mobinaute']."', '".$_REQUEST['email_mobinaute']."', '".$_REQUEST['adress_mobinaute']."', '".$_REQUEST['cin_mobinaute']."')");

    mysql_close();
?>

这是我想弄清楚我刚刚转移的变量的第二页:

<?php
    session_start();
?>
<?php
    echo '<br />';
    echo 'Votre data1 est'.$_SESSION['name_mobinaute'];
    echo '<br />';

    echo '<br />';
    echo 'Votre data2 est'.$_SESSION['cin_mobinaute'];
    echo '<br />';

    echo '<br />';
    echo 'Votre data3 est'.$_SESSION['email_mobinaute'];
    echo '<br />';

    echo '<br />';
    echo 'Votre data4 est'.$_SESSION['code_bancaire_mobinaute'];
    echo '<br />';

    echo '<br />';
    echo 'Votre data5 est'.$_SESSION['date_transaction_mobinaute'];
    echo '<br />';
?>

我这样做是因为我想将从我的 android 应用程序接收到的数据传输到另一个 Web 服务器:

android(客户端)===> 网络服务器编号 1 =====> 网络服务器编号 2

再次感谢;我很抱歉我的英语。

4

1 回答 1

0

好的,抛开以这种方式使用 PHP/MySQL 既不受欢迎又非常不安全的事实,您可以使用:

$newRecordId = mysql_insert_id();

如果表具有 AUTO_INCREMENT 主键列,则获取最后插入记录的 ID 。否则,如果
没有其他插入可以通过其他请求发生, 那么您将只需要时间戳和检索最新记录,这非常麻烦和混乱。

@thelawnmowerman 也是对的,android 和 web-services 标签是错误的——请使用 php 和 mysql。

*编辑*

在我看来,这里的目标是收集一些通过 POST/GET 发送的数据,将其插入数据库表中,然后显示它。这可以在不使用会话变量或需要获取最新记录的情况下实现,所有这些都在一个页面中。

注意- 我还没有完全清理这样做的方式 - 我已经删除了无效的“显示”语句并解释了一些请求数据没有在插入中使用但随后显示的事实。
如果这不是它需要的工作方式,您将需要相应地进行调整,并且请记住,不会对任何数据进行清理、清理或验证。

<?php
    // save request values to variables
    $name_mobinaute = $_REQUEST['name_mobinaute'];
    $email_mobinaute = $_REQUEST['email_mobinaute'];
    $adress_mobinaute = $_REQUEST['adress_mobinaute'];
    $cin_mobinaute = $_REQUEST['cin_mobinaute'];
    $code_bancaire_mobinaute = $_REQUEST['code_bancaire_mobinaute'];
    $date_transaction_mobinaute = $_REQUEST['date_transaction_mobinaute'];

    // Connexion au serveur de base de données
    $connect_result = mysql_connect("localhost", "root", "azertga");

    if (!$connect_result) {
        echo("Impossible de se connecter au serveur de bases de données.<br>\n");
    } else {
        echo("Connecté au serveur de bases de données!<br>\n");
        // Selection de la base de données
        $select_result = mysql_select_db("mediashore");
    }

    if (!$select_result) {
        echo("Impossible de se connecter à la base de données.<br>\n");
    } else {
        echo("Connecté à la base de données!<br>\n");
    }

    // create sql statement for insert using variables set from request values
    $sql = "INSERT INTO clients_megamadou (C_nom, C_email, c_adresse, c_ncin) VALUES ('".$name_mobinaute."', '".$email_mobinaute."', '".$adress_mobinaute."', '".$cin_mobinaute."')";
    // execute insert and get result (will be true/false depending on success)
    $result=mysql_query($sql);

    if (!$result) {
        echo("Data failed to insert!<br>\n");
    } else {
        echo("Data inserted successfully:<br>\n");
        echo("- name_mobinaute: ".$name_mobinaute."<br/>\n");
        echo("- email_mobinaute: ".$email_mobinaute."<br/>\n");
        echo("- adress_mobinaute: ".$adress_mobinaute."<br/>\n");
        echo("- cin_mobinaute: ".$cin_mobinaute."<br/>\n");
        // these values were passed in via request, but were not inserted 
        echo("<br/>Other data:<br/>\n");
        echo("- code_bancaire_mobinaute: ".$code_bancaire_mobinaute."<br/>\n");
        echo("- date_transaction_mobinaute: ".$date_transaction_mobinaute."<br/>\n");
    }

    mysql_close();
?>
于 2013-02-14T16:07:52.697 回答