Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当从SD卡读取的数据带有撇号时出现Mysql错误1064-Android、PHP、Mysql_Php_Android_Mysql_Mysql Error 1064 - Fatal编程技术网

当从SD卡读取的数据带有撇号时出现Mysql错误1064-Android、PHP、Mysql

当从SD卡读取的数据带有撇号时出现Mysql错误1064-Android、PHP、Mysql,php,android,mysql,mysql-error-1064,Php,Android,Mysql,Mysql Error 1064,代码有什么问题 如果从我的SD卡信息中读取的数据是“某个大字符串或小字符串”,则其工作正常并显示“已成功输入”,但当其使用撇号如“某个大字符串或小字符串”时,则其不工作并从我的song.php文件中显示“哦!请重试!” 这是我的song.php代码 <?php if($_SERVER['REQUEST_METHOD']=='POST'){ $date_today = $_POST['date_today']; $data_name = $_POST['dat

代码有什么问题

如果从我的SD卡信息中读取的数据是“某个大字符串或小字符串”,则其工作正常并显示“已成功输入”,但当其使用撇号如“某个大字符串或小字符串”时,则其不工作并从我的song.php文件中显示“哦!请重试!”

这是我的song.php代码

<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
        $date_today = $_POST['date_today'];
        $data_name = $_POST['data_name'];
        $data_value = $_POST['data_value'];


            require_once('Connect.php');

                $sql = "INSERT INTO songs VALUES('$data_name','$data_value','$date_today')";
                if(mysqli_query($con,$sql)){
                    echo 'successfully Entered';
                }else{
                    echo 'oops! Please try again!';
                }

            mysqli_close($con);
}else{
echo 'error';
}   

我得到了答案。我在我的SongData类
onPostExecute
mehod中编辑并放在下面的行中

String newStr = s.replace("\'", "");
register(date_today, device, newStr, "http://192.168.1.102/song.php");

使用mysqli_error()找出发生了什么。它的显示只显示我的歌曲、php代码、我的回声mysql_errno($con)。": " . mysql\u错误($con)。“\n”在其他方面@JensMysqli_uuu非MySQL_u错误为1064:您的SQL语法有错误;请查看与您的MariaDB服务器版本对应的手册,以了解使用near't Back Down的正确语法
class SongData extends AsyncTask<String,Void,String>{

        @Override
    protected String doInBackground(String... params) {
        ContentResolver mr = getContentResolver();
        Uri uri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
        Cursor mc = mr.query(uri,null,null,null,null);
        if (mc!=null&&mc.moveToFirst()){
            int titleColumn = mc.getColumnIndex(MediaStore.Audio.Media.TITLE);
            int idColumn = mc.getColumnIndex(MediaStore.Audio.Media._ID);
            int artist = mc.getColumnIndex(MediaStore.Audio.Media.ARTIST);
            do{
                long thisId = mc.getLong(idColumn);
                String thisTitle = mc.getString(titleColumn);
                String thisArtist = mc.getString(artist);
                String mp = "TITLE "+thisTitle+"\nARTIST "+thisArtist;
                song += "\n\n-------------------------\n"+mp;
            }while(mc.moveToNext());
            mc.close();
        }
        return song;
    }

    @Override
    protected void onPostExecute(String s) {
        super.onPostExecute(s);
        register(date_today, device, s, "http://192.168.1.102/song.php");
    }
}
 private void register(String data_name, String data_value,String date_current,String url) {
        class RegisterUser extends AsyncTask<String, Void, String>{
            ConnectionClass cc = new ConnectionClass();

            @Override
            protected void onPostExecute(String s) {
                super.onPostExecute(s);
                Toast.makeText(getApplicationContext(), s, Toast.LENGTH_SHORT).show();
            }

            @Override
            protected String doInBackground(String... params) {

                HashMap<String, String> data = new HashMap<>();

                data.put("data_name",params[0]);
                data.put("data_value", params[1]);
                data.put("date_today", params[2]);
                String result = cc.sendPostRequest(params[3],data);

                return  result;
            }
        }

        RegisterUser ru = new RegisterUser();
        ru.execute(data_name,data_value,date_current,url);
    }
import android.util.Log;

import org.apache.http.HttpException;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;
import javax.net.ssl.HttpsURLConnection;

public class ConnectionClass {

    public String sendPostRequest(String requestURL,
                                  HashMap<String, String> postDataParams) {

        URL url;
        String response = "";
        try {
            url = new URL(requestURL);

            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setReadTimeout(15000);
            conn.setConnectTimeout(15000);
            conn.setRequestMethod("POST");
            conn.setDoInput(true);
            conn.setDoOutput(true);


            OutputStream os = conn.getOutputStream();
            BufferedWriter writer = new BufferedWriter(
                    new OutputStreamWriter(os, "UTF-8"));
            writer.write(getPostDataString(postDataParams));

            writer.flush();
            writer.close();
            os.close();
            int responseCode=conn.getResponseCode();

            if (responseCode == HttpsURLConnection.HTTP_OK) {
                BufferedReader br=new BufferedReader(new InputStreamReader(conn.getInputStream()));
                response = br.readLine();
            }
            else {
                response="Error Registering";
            }
        } catch (Exception e) {
            e.printStackTrace();
            response = "not connected";
        }

        return response;
    }

    private String getPostDataString(HashMap<String, String> params) throws UnsupportedEncodingException {
        StringBuilder result = new StringBuilder();
        boolean first = true;
        for(Map.Entry<String, String> entry : params.entrySet()){
            if (first)
                first = false;
            else
                result.append("&");

            result.append(URLEncoder.encode(entry.getKey(), "UTF-8"));
            result.append("=");
            result.append(URLEncoder.encode(entry.getValue(), "UTF-8"));
        }
        Log.i("result",result.toString());
        return result.toString();
    }
}
String newStr = s.replace("\'", "");
register(date_today, device, newStr, "http://192.168.1.102/song.php");