【问题标题】:How do you pass variables from Swift into PHP to be used in mySQL queries?如何将变量从 Swift 传递到 PHP 以用于 mySQL 查询?
【发布时间】:2015-03-26 15:18:07
【问题描述】:

我目前正在制作一个 iOS Swift 应用程序,它允许用户创建派对播放列表并让其他用户加入该派对播放列表以对歌曲进行投票。

我目前正在研究如何将用户输入的文本字段作为变量并将它们传递到 PHP 脚本中,当用户在输入值后点击“CREATE PARTY”按钮时,该脚本会使用这些给定的变量执行查询。

下面是我的 ViewController 类:

import UIKit
import Foundation

class CreatePartyViewController: UIViewController, NSURLConnectionDelegate, NSURLConnectionDataDelegate {

@IBOutlet weak var partyName: UITextField!
@IBOutlet weak var pinNumber: UITextField!
@IBOutlet weak var host: UITextField!
let genre = "pop"


override func viewDidLoad() {
    super.viewDidLoad()
}



func textFieldShouldReturn(textfield: UITextField!) ->Bool {
    partyName.resignFirstResponder()
    return true
}
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
    self.view.endEditing(true)
}


@IBAction func createParty(sender: AnyObject) {

    // THIS IS WRONG, I AM STUCK FIGURING OUT WHAT TO PUT HERE

    let url = NSString(format:"http://myurl/createParty.php?partyName=\(self.partyName.text)&PIN=\(self.pinNumber.text)&host=\(self.host.text)&genre=\(self.genre)")
    println(url)

    let urlData = NSData(contentsOfURL: url)

    let datastring = NSString(data: urlData!, encoding: UInt())

    println(datastring)


}

这是我的 PHP 脚本:

$dbhost = "#####";
$dbuser = "#######";
$dbpass = "########";
$db = "########";
$partyTable = "party";
$votesTable = "votes";
$songsTable = "songs";


$conn=mysql_connect($dbhost, $dbuser, $dbpass) or die (mysqli_error());
mysql_select_db($db, $conn) or die(mysql_error());


if (isset ($_GET["partyName"]) && isset ($_GET['PIN']) && isset ($_GET['maxofQ']) && isset ($_GET['genre']))

    {
        $name = $_GET['partyName'];
        $PIN = $_GET['PIN'];
        $host = $_GET['host'];
        $genre = $_GET['genre'];

    }
else
    {
        $name = "nilio";
        $PIN = "000";
        $host = "nilio";
        $genre = "nilio";
    }

$sql1 = "insert into party(artist, PIN, host, genre) values($name, $PIN, $host, $genre)";
$sql2 = "select trackURI, artist, track into votes(trackURI, artist, track) from songs where genre = $genre";
$res1 = mysql_query($sql1, $conn) or die(mysql_error());
$res2 = mysql_query($sql2, $conn) or die(mysql_error());

mysqli_close($conn);    

if ($res) and ($res2)
    {
        echo "success";
    }
else
    {
        echo "failed";
    }

【问题讨论】:

    标签: php ios mysql swift get


    【解决方案1】:

    我认为你需要使用 mysqli 而不是 mysql

    Swift 代码没问题,但请检查你的 php

    你也可以看看这个话题

    POST data to a PHP method from Swift

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-16
      • 1970-01-01
      • 1970-01-01
      • 2012-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多