• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

php - 从 iOS 应用程序发布数组以通过 PHP 文件在数据库中输入值

[复制链接]
菜鸟教程小白 发表于 2022-12-12 13:37:47 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我需要通过 PHP 文件在我的数据库表中添加值,但是我在一个动态数组中有一个值,可以有一个、两个或三个以上的值,单击我的 iOS 应用程序中的按钮时,我通过 post 发送数组使用 ASHIHTTPRequest 但在数据库中没有输入值。 我在日志中得到的值 NSLog(@"selected values are %@",self.arrayValue);

@property (nonatomic, retain) NSMutableArray *arrayValue;:

selected values are (
    1,
    2
)

我正在使用此代码:

 request = [ASIFormDataRequest requestWithURL:url];
 [request setPostValue:Id forKey"userid"];
 [request setPostValue:self.arrayValue forKey"svalueid"];

 [request setCompletionBlock:^{



    NSString *response = [request responseString];
    response = [request responseString];
    NSLog(@"Server response: %@", response);
    // Response shows that value has been entered in DB but it shows zero in value of "svalueid" and userid get the desired value.

在我的 PHP 代码中:

<?php

// array for JSON response
$response = array();
//$svalueid=array();


// check for required fields
if (isset($_REQUEST['userid']) && isset($_REQUEST['svalueid'])) {
  $userid = $_REQUEST['userid'];
  $svalueid = explode(",",$_REQUEST['svalueid']);


include 'connect.php'; 

// connecting to db
$db = new DB_CONNECT();


            $result = mysql_query("SELECT userid, svalueid
            FROM users
            WHERE userid = '$userid'");


    if (mysql_num_rows($result) > 0) {


    $result = mysql_query("DELETE FROM uses WHERE userid = '$userid'");

      foreach($svalueid as $value){

$result = mysql_query("INSERT INTO users(id, userid, svalueid) VALUES('','$userid', '$value')");

                                      }

}
    else
    {
      foreach($svalueid as $value){

$result = mysql_query("INSERT INTO users(id, userid, svalueid) VALUES('','$userid', '$value')");

 }
    }



// check if row inserted or not
if ($result) {
    // successfully inserted into database
    $response["success"] = 1;
    $response["message"] = "successful.";

    // echoing JSON response
    echo json_encode($response);
} else {
    // failed to insert row
    $response["success"] = 0;
    $response["message"] = "An error occurred.";

    // echoing JSON response
    echo json_encode($response);
}



} else {
    // required field is missing
    $response["success"] = 0;
    $response["message"] = "Field's missing";

    // echoing JSON response
    echo json_encode($response);
}
?>

但是在我的数据库表中的 svalueid 字段中,这个 get 的值 = 0 我不太了解PHP。 请任何人帮助我如何将我的数组值发送到数据库表。

我也尝试以 json 格式发送数据,但能够实现它。

 NSMutableDictionary *jsonDict = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *tagData = [[NSMutableDictionary alloc] init];
    for(int i = 0; i < arrayValue.count; i++)
    {
        NSString *keyString = [NSString stringWithFormat"%i", i];
        [tagData setObject:[arrayValue objectAtIndex:i] forKey:keyString];

    }

    [jsonDict setObject:tagData forKey"svalueid"];



    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:jsonDict options:NSJSONWritingPrettyPrinted error:nil];
    NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];

[request setPostValue:Id forKey"userid"];

[request setPostValue:jsonString forKey"svalueid"];

现在在我的控制台上我得到这个值 NSLog(@"json json string going on server is %@",jsonString);

 json string going on server is {
  "svalueid" : {
    "0" : 1,
    "1" : 2
  }
}

现在我不知道它是否正确,我应该如何修改我的 PHP 文件,我需要帮助。 请问如果我在我的代码中做错了什么,任何人都可以纠正它。



Best Answer-推荐答案


$svalueid 是一个带有 key=>value 对的 json 字符串,因此您的 foreach 语句应如下所示:

foreach($svalueid as $key=>$value)

而不是这个:

foreach($svalueid as $value)

还需要更新查询以正确使用 $key 和 $value 变量。我不知道这些数字在你的 json 字符串中代表什么,所以我不确定如何给你一个更正的查询。

关于php - 从 iOS 应用程序发布数组以通过 PHP 文件在数据库中输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18275842/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap