마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 스튜디오 게시판 구현 질문(Mysql에 INSERT하기)

0 추천

WriteBoard.php

<?php

 $con = mysqli_connect("localhost","chad76","asdf070612","chad76");



 $bulletinTitle = $_POST["bulletinTitle"];

 $bulletinSubject = $_POST["bulletinSubject"];

 $bulletinGrade = $_POST["bulletinGrade"];

 $bulletinContent = $_POST["bulletinContent"];



 $statemente = mysqli_prepare($con, "INSERT INTO BOARD VALUES(?, ?, ?, ?)");

 mysqli_stmt_bind_param($statemente, "ssss", $bulletinTitle, $bulletinSubject, $bulletinGrade, $bulletinContent);

 mysqli_stmt_execute($statemente);



 $response = array();

 $response["success"] = true;



 echo json_encode($response);

?>

 

WriteRequest.java


public class WriteRequest 
extends StringRequest {







    
final static private  String 
URL=
"http://chad76.cafe24.com/WriteBoard.php";



    
private Map<String, String> 
parameters;







    
public  WriteRequest(String bulletinTitle, String bulletinSubject, String bulletinGrade, String bulletinContent, Response.Listener<String> listener){



        
super(Method.
POST, 
URL, listener, 
null);



        
parameters= 
new HashMap<>();



        
parameters.put(
"bulletinTitle", bulletinTitle);



        
parameters.put(
"bulletinSubject", bulletinSubject);



        
parameters.put(
"bulletGrade", bulletinGrade);



        
parameters.put(
"bulletContent", bulletinContent);



    }







    
@Override



 
  
public Map<String, String> getParams(){



        
return 
parameters;



    }



}

WriteActivity.java


public class WriteActivity 
extends AppCompatActivity {







    Button 
writeButton;



    Spinner 
subjectSpinner,
gradeSpinner;



    ArrayAdapter 
subjectAdapter,
gradeAdapter;



    EditText 
titleText,
contentText;



    
@Override



 
  
protected void onCreate(Bundle savedInstanceState) {



        
super.onCreate(savedInstanceState);



        setContentView(R.layout.
activity_write);







        
titleText=(EditText)findViewById(R.id.
titleText);



        
contentText=(EditText)findViewById(R.id.
contentText);







        
subjectSpinner=(Spinner)findViewById(R.id.
subjectSpinner);



        
gradeSpinner=(Spinner)findViewById(R.id.
gradeSpinner);







        
subjectAdapter= ArrayAdapter.
createFromResource(
this,R.array.
subject,android.R.layout.
simple_dropdown_item_1line);



        
subjectSpinner.setAdapter(
subjectAdapter);







        
gradeAdapter=ArrayAdapter.
createFromResource(
this,R.array.
grade,android.R.layout.
simple_dropdown_item_1line);



        
gradeSpinner.setAdapter(
gradeAdapter);







        
writeButton=(Button)findViewById(R.id.
writeButton);



        
writeButton.setOnClickListener(
new View.OnClickListener() {



            
@Override



 
          
public void onClick(View view) {



                String title = 
titleText.getText().toString();



                String subject=
subjectSpinner.getSelectedItem().toString();



                String grade=
gradeSpinner.getSelectedItem().toString();



                String content = 
contentText.getText().toString();







                
if (title.equals(
"") || content.equals(
"")) {



                    Toast.
makeText(getApplicationContext(), 
"빈칸을 모두 체워주세요", Toast.
LENGTH_LONG).show();



                    
return;



                }



                Response.Listener<String> responseListener = 
new Response.Listener<String>() {



                    
@Override



 
                  
public void onResponse(String response) {



                        
try {



                            JSONObject jsonResponse = 
new JSONObject(response);



                            
boolean success = jsonResponse.getBoolean(
"success");



                            
if (success) {



                                Toast.
makeText(getApplicationContext(), 
"글 쓰기를 성공하였습니다", Toast.
LENGTH_LONG).show();



                                Intent intent = 
new Intent(WriteActivity.
this, PediaActivity.
class);



                                WriteActivity.
this.startActivity(intent);



                            } 
else {



                                Toast.
makeText(getApplicationContext(), 
"글 쓰기를 실패하였습니다", Toast.
LENGTH_LONG).show();



                            }



                        } 
catch (JSONException e) {



                            e.printStackTrace();



                        }



                    }



                };



                WriteRequest writeRequest = 
new WriteRequest(title, subject, grade, content, responseListener);



                RequestQueue queue = Volley.
newRequestQueue(WriteActivity.
this);



                queue.add(writeRequest);



            }



        });



    }



}

 

DB정보

첨부 이미지

글 쓰기가 성공했다는 토스트까지는 뜨는데 정작 DB에는 추가가 되지 않았습니다 

수정해야 하는 부분을 알려주셨으면 합니다

프로그래밍잘하고싶은나 (390 포인트) 님이 2017년 10월 22일 질문

1개의 답변

0 추천
http://pentode.tistory.com/41

해당 php구문 내에서 항상 success를 반환하네요. 해당 exec 부분을 변수로 받아서 넣어보세요
익명사용자 님이 2017년 10월 24일 답변
...