작은따옴표가 포함된 데이터를 MySQL 데이터베이스에 삽입하려고 하면 오류가 발생할 수 있습니다. 오류 메시지는 일반적으로 따옴표 문자 근처의 구문 문제를 나타냅니다.
이 문제를 해결하려면 데이터 내의 따옴표를 백슬래시()로 이스케이프 처리하세요. 예를 들어 "Kellogg's"는 "Kellogg's"로 작성해야 합니다.
또한 보안 강화를 위해 mysql_real_escape_string 함수를 사용하여 사용자가 제공한 모든 입력을 이스케이프하여 SQL 삽입을 방지하는 것이 좋습니다.
두 기술을 모두 통합한 다음 버전의 삽입 기능을 고려해 보세요.
<code class="php">function insert($database, $table, $data_array) { // Establish MySQL connection and select database $mysql_connect = connect_to_database(); mysql_select_db($database, $mysql_connect); // Prepare column and data values for SQL command foreach ($data_array as $key => $value) { $tmp_col[] = $key; $tmp_dat[] = "'" . mysql_real_escape_string($value) . "'"; // Escape against SQL injections } $columns = join(',', $tmp_col); $data = join(',', $tmp_dat); // Construct and execute SQL command $sql = 'INSERT INTO ' . $table . '(' . $columns . ')VALUES(' . $data . ')'; $result = mysql_query($sql, $mysql_connect); // Handle SQL errors or return result if (!$result) { echo 'MySQL Update Error: ' . mysql_error($mysql_connect); $result = ''; } else { return $result; } }</code>
위 내용은 데이터 삽입 시 아포스트로피를 처리할 때 MySQL 오류를 극복하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!