iPhone アプリでユーザーが入力した文字列 (アドレス) を mysql データベースに保存しようとしています。これを達成するためにphpを使用しています。いくつか問題があります。
これがphpでの私のコードです:
...
$guestadd1 = $_GET["guestadd1"];
$guestadd2 = $_GET["guestadd2"];
$guestcity = $_GET["guestcity"];
...
そして、これがmysqlクエリです:
mysql_query( "INSERT INTO HMS_GUESTS( GUESTTYPE, GUESTLNAME, GUESTFNAME, GUESTADDRESS1,
GUESTADDRESS2, GUESTCITY, GUESTSTATE, GUESTPOSTCODE, GUESTWORKPHONE) VALUES
('$guestType', '$guestLname', '$guestFname', '$guestadd1', '$guestadd2',
'$guestcity', '$gueststate', '$guestpostal', '$guestWphone') ", $con) or
die(mysql_error());
1 しかし、スペースを含むデータを挿入できません。スペースなしで保存しようとすると、挿入できます。スペースを挿入するにはどうすればよいですか?
2 ゲストには、個人用とプロフェッショナル用の 2 種類があります。そのため、複数のエントリが同じゲスト タイプを持つことができます。そのため、1 つのタイプから 2 番目のゲストを挿入しようとすると、キー エラーの値が重複しています。これを克服してエントリを挿入するにはどうすればよいですか?
どんな助けでも感謝します。ありがとうございました :)
EDIT 私の目的のCコードを含む
NSString *strURL = [NSString stringWithFormat:@"http://127.0.0.1/hms.php?guesttype=%@&
guestLname=%@&guestFname=%@&guestadd1=%@&guestadd2=%@&guestcity=%@&
gueststate=%@&guestpostal=%@&guestWphone=%@", guestID, self.name1.text, self.name2.text,
self.address1.text, self.address2.text, self.city.text, self.state.text, self.postal.text,
self.phone.text, self.fax.text];
// to execute php code
NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString:strURL]];
// to receive the returned value
NSString *strResult = [[NSString alloc] initWithData:dataURL encoding:NSUTF8StringEncoding];
そしてmysqlテーブル構造:
Guest Type | Guest First Name | Guest Last Name | ADDRESS LINE 1 | ADDRESS LINE 2 | CITY | STATE | POSTAL | WORKPHONE
----------------------------------------------------------------------------------------------------------------------
Personal | blah | blah | blah | blah | blah | blah | blah | blah
Professional| blah | blah | blah | blah | blah | blah | blah | blah
SO、アドレス列またはおそらくどこでも..私は挿入できない引数にスペースを見つけます。
ここで別のゲストをテーブルに追加しようとすると、タイプ Personal と言うと、次のエラーが表示されます: キー 1 の重複エントリ '1-1-PERSONAL-11'