- 전체
- android studio
- Android SDK
- Android NDK
- Android ADK
- Android Etc. Lib.
- Android dalvik VM
- Android 보안
- PhoneGap
- AOSP 개발
- MIT App Inventor 2
- kivy (python)
- ionic framework
- Kotlin (코틀린)
- React Native
Connect App Inventor to MySQL Database
In this tutorial I want to show you how to connect App Inventor to a MySQL database using PHP. I tried to keep everything as simple as possible while at the same time teaching enough so that you can do anything.
You’ll be able to submit to, update and then receive a CSV file from the database using the PHP files below. You’ll also be able to limit access to data simply by creating a different PHP file for each person that would need to access the database. Everything you need can be found below.
If you like videos like this, it helps my search results if you tell Google Plus with a click here
MySQL Database Setup
App Inventor MySQL Design View
App Inventor MySQL Blocks
Click the image below a few times to view it full screen

PHP Code that You’ll Upload to a Server
01 |
<?php |
02 |
03 |
DEFINE ('DBUSER', 'YourDatabaseUserName'); |
04 |
DEFINE ('DBPW', 'YourPassword'); |
05 |
DEFINE ('DBHOST', 'YourDatabaseHost'); |
06 |
DEFINE ('DBNAME', 'YourDatabaseName'); |
07 |
|
08 |
$dbc = mysqli_connect(DBHOST,DBUSER,DBPW); |
09 |
if (!$dbc) { |
10 |
die("Database connection failed: " . mysqli_error($dbc)); |
11 |
exit(); |
12 |
} |
13 |
14 |
$dbs = mysqli_select_db($dbc, DBNAME); |
15 |
if (!$dbs) { |
16 |
die("Database selection failed: " . mysqli_error($dbc)); |
17 |
exit(); |
18 |
} |
19 |
20 |
$result = mysqli_query($dbc, "SHOW COLUMNS FROM customer"); |
21 |
$numberOfRows = mysqli_num_rows($result); |
22 |
if ($numberOfRows > 0) { |
23 |
24 |
/* By changing Fred below to another specific persons name you can limit access to just the part of the database for that individual. You could eliminate WHERE recorder_id='Fred' all together if you want to give full access to everyone. */ |
25 |
26 |
$values = mysqli_query($dbc, "SELECT * FROM customer WHERE recorder_id='Fred'"); |
27 |
while ($rowr = mysqli_fetch_row($values)) { |
28 |
for ($j=0;$j<$numberOfRows;$j++) { |
29 |
$csv_output .= $rowr[$j].", "; |
30 |
} |
31 |
$csv_output .= "\n"; |
32 |
} |
33 |
34 |
} |
35 |
36 |
print $csv_output; |
37 |
exit; |
38 |
?> |
01 |
<?php |
02 |
03 |
DEFINE ('DBUSER', 'YourDatabaseUserName'); |
04 |
DEFINE ('DBPW', 'YourPassword'); |
05 |
DEFINE ('DBHOST', 'YourDatabaseHost'); |
06 |
DEFINE ('DBNAME', 'YourDatabaseName'); |
07 |
08 |
$dbc = mysqli_connect(DBHOST,DBUSER,DBPW); |
09 |
if (!$dbc) { |
10 |
die("Database connection failed: " . mysqli_error($dbc)); |
11 |
exit(); |
12 |
} |
13 |
14 |
$dbs = mysqli_select_db($dbc, DBNAME); |
15 |
if (!$dbs) { |
16 |
die("Database selection failed: " . mysqli_error($dbc)); |
17 |
exit(); |
18 |
} |
19 |
20 |
$FirstName = mysqli_real_escape_string($dbc, $_GET['FirstName']); |
21 |
$LastName = mysqli_real_escape_string($dbc,$_GET['LastName']); |
22 |
$Street = mysqli_real_escape_string($dbc,$_GET['Street']); |
23 |
$City = mysqli_real_escape_string($dbc,$_GET['City']); |
24 |
$State = mysqli_real_escape_string($dbc,$_GET['State']); |
25 |
$Zip = mysqli_real_escape_string($dbc,$_GET['Zip']); |
26 |
$Email = mysqli_real_escape_string($dbc,$_GET['Email']); |
27 |
$Phone = mysqli_real_escape_string($dbc,$_GET['Phone']); |
28 |
$Recorder = mysqli_real_escape_string($dbc,$_GET['Recorder']); |
29 |
30 |
$query = "INSERT INTO customer (first_name, last_name, street_address, city, state, zip_code, email, phone_number, recorder_id) VALUES ('$FirstName', '$LastName', '$Street', '$City', '$State', '$Zip', '$Email', '$Phone', '$Recorder')"; |
31 |
32 |
$result = mysqli_query($dbc, $query) or trigger_error("Query MySQL Error: " . mysqli_error($dbc)); |
33 |
34 |
mysqli_close($dbc); |
35 |
36 |
?> |
01 |
<?php |
02 |
03 |
DEFINE ('DBUSER', 'YourDatabaseUserName'); |
04 |
DEFINE ('DBPW', 'YourPassword'); |
05 |
DEFINE ('DBHOST', 'YourDatabaseHost'); |
06 |
DEFINE ('DBNAME', 'YourDatabaseName'); |
07 |
08 |
$dbc = mysqli_connect(DBHOST,DBUSER,DBPW); |
09 |
if (!$dbc) { |
10 |
die("Database connection failed: " . mysqli_error($dbc)); |
11 |
exit(); |
12 |
} |
13 |
14 |
$dbs = mysqli_select_db($dbc, DBNAME); |
15 |
if (!$dbs) { |
16 |
die("Database selection failed: " . mysqli_error($dbc)); |
17 |
exit(); |
18 |
} |
19 |
20 |
$FirstName = mysqli_real_escape_string($dbc, $_GET['FirstName']); |
21 |
$LastName = mysqli_real_escape_string($dbc,$_GET['LastName']); |
22 |
$Street = mysqli_real_escape_string($dbc,$_GET['Street']); |
23 |
$City = mysqli_real_escape_string($dbc,$_GET['City']); |
24 |
$State = mysqli_real_escape_string($dbc,$_GET['State']); |
25 |
$Zip = mysqli_real_escape_string($dbc,$_GET['Zip']); |
26 |
$Email = mysqli_real_escape_string($dbc,$_GET['Email']); |
27 |
$Phone = mysqli_real_escape_string($dbc,$_GET['Phone']); |
28 |
29 |
$CustomerId = mysqli_real_escape_string($dbc,$_GET['CustomerId']); |
30 |
31 |
$query = "UPDATE customer SET first_name='$FirstName', last_name='$LastName', street_address='$Street', city='$City', state='$State', zip_code='$Zip', email='$Email', phone_number='$Phone' WHERE cust_id='$CustomerId'"; |
32 |
33 |
$result = mysqli_query($dbc, $query) or trigger_error("Query MySQL Error: " . mysqli_error($dbc)); |
34 |
35 |
mysqli_close($dbc); |
36 |
37 |
?> |
38 |
39 |
<!-- http://newjustin.com/updatecust.php?FirstName=Sue&LastName=Banas&Street=123&City=Pittsburgh&State=PA&Zip=15222&Email=derek@aol.com&Phone=4125551212&CustomerId=14 |
40 |
--> |
[출처] http://www.newthinktank.com/2014/05/connect-app-inventor-mysql-database/
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
댓글 0
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
|---|---|---|---|---|
| 13 |
빠르게배우는 안드로이드 Fragment-4(Fragment간 에 데이터전달)
| 졸리운_곰 | 2020.09.19 | 155 |
| 12 |
빠르게배우는 안드로이드 Fragment-3(Fragment기초 실습)
| 졸리운_곰 | 2020.09.19 | 209 |
| 11 | 빠르게배우는 안드로이드 Fragment-2(Activity-> Fragment로 쉽게 변경) | 졸리운_곰 | 2020.09.19 | 236 |
| 10 |
빠르게배우는 안드로이드 Fragment -1 (배경)
| 졸리운_곰 | 2020.09.19 | 194 |
| 9 |
안드로이드 스튜디오 - 새로 생성한 Activity Class를 쉽게 Manifest에 등록하기.
| 졸리운_곰 | 2020.08.08 | 252 |
| 8 |
Android Studio Build시 failed linking references 해결방법
| 졸리운_곰 | 2020.05.05 | 648 |
| 7 |
[안드로이드 스튜디오] COULD NOT FIND COM.ANDROID.TOOLS.BUILD:GRADLE:3.0.0-BETA6
| 졸리운_곰 | 2020.05.05 | 125 |
| 6 |
Android Sync SQLite Database with Server using PHP and MySQL
| 졸리운_곰 | 2019.02.25 | 7762 |
| 5 |
안드로이드의 MVC, MVP, MVVM 종합 안내서
| 졸리운_곰 | 2019.01.06 | 370 |
| 4 |
Getting Started: WebView-based Applications for Web Developers
| 졸리운_곰 | 2018.09.03 | 410 |
| 3 |
Android Asynchronous Http Client
| 졸리운_곰 | 2017.07.03 | 709 |
| 2 |
android studio 2.3 의 안드로이드 레이아웃 배치 법 : Layout Editor로 UI 빌드
| 졸리운_곰 | 2017.03.09 | 534 |
| 1 |
Android Studio 2.2에서 Layout Preview 한글 깨짐 현상 해결 방법
| 졸리운_곰 | 2017.03.08 | 568 |



