PHP7-MariaDB 데이터 양식 삽입
제가 초보자라 잠시만 기다려주세요. 마리아DB에 DATA를 추가하는 HTML 양식을 만들고 싶습니다.그냥 기본!하지만 난 할 수 없어요.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01
Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<meta charset="utf-8" />
<head>
<title>PAGINA CARICAMENTO DATI</title>
</head>
<body>
<table border="0">
<tr>
<td align="center">Inserisci i dati richiesti</td>
</tr>
<tr>
<td>
<table>
<form method="post" action="input.php">
<tr>
<td>Nome</td>
<td><input type="text" name="name" size="20">
</td>
</tr>
<tr>
<td>Cognome</td>
<td><input type="text" name="surname" size="20">
</td>
</tr>
<tr>
<td>Città</td>
<td><input type="text" name="city" size="20">
</td>
</tr>
<tr>
<td></td>
<td align="right"><input type="submit"
name="submit" value="Sent"></td>
</tr>
</form>
</table>
</td>
</tr>
</table>
</body>
</html>
그리고 PHP 부분은 다음과 같습니다.
<?php
$host='localhost';
$user='root';
$password='password';
$database='esempio';
$connection = mysqli_connect($host,$user,$password,$database);
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$name = $_POST['name'];
$surname = $_POST['surname'];
$city = $_POST['city'];
printf($name);
printf($surname);
printf($city);
$sql="INSERT INTO people (ID,Name,Surname,City)VALUES(default,$name,$surname,$city)";
printf($sql);
if(!mysqli_query($connection,$sql)){
printf("Errore: %s\n",mysqli_error($connection));
}
mysqli_close($connection);
?>
MARIADB에는 4개의 열이 있습니다.
- ID 색인 int(11) 없음 AUTO_INCREMENT 변경사항 드롭다운
- 이름 tinytext utf8_general_ci 없음 변경 없음 변경 드롭다운
- 성 tinytext utf8_general_ci 없음 변경 없음 변경 드롭다운
- 시티 tinytext utf8_general_ci 없음 변경 없음 변경 드롭다운
문자열 값을 따옴표로 묶어야 합니다.
VALUES('','$name','$surname','$city')
참고: ID 열이 AI이므로, 다음 항목을 제거합니다.default
.
그러나 이를 위해서는 두 가지 이유로 데이터를 사용하지 않아야 합니다.
- 이러한 값 중 MySQL이 불만을 제기할 문자(예: 아포스트로피)를 포함하는 경우.
- SQL 주입을 엽니다.
대신 준비된 문을 사용합니다.
쿼리에 대한 오류도 확인합니다.
오류 보고:
빈 입력도 확인해야 합니다.
또한 열 유형을 올바르게 선택했는지 확인해야 합니다.tinytext
여기서 사용하고 싶은 것이 아닐 수도 있지만, 여전히 작동할 것입니다.varchar
문자열 리터럴을 사용할 때 일반적으로 선호되는 선택입니다.
상담:
- http://dev.mysql.com/doc/refman/5.7/en/string-type-overview.html
- 작은 텍스트, 텍스트, 중간 텍스트 및 긴 텍스트 최대 저장소 크기
HTML 스티커:
<form>
의 자식이 될 수 없음<table>
.
언급URL : https://stackoverflow.com/questions/40432893/php7-mariadb-insert-data-form
'programing' 카테고리의 다른 글
실행 중인 도커 컨테이너에서 환경 변수를 설정하는 방법 (0) | 2023.08.02 |
---|---|
3D 어레이는 C에 어떻게 저장됩니까? (0) | 2023.08.02 |
MySQL : 여러 행을 쉼표로 구분한 단일 행으로 표시 (0) | 2023.08.02 |
컨테이너가 넘치는 플렉스 항목의 맨 위로 스크롤할 수 없습니다. (0) | 2023.08.02 |
재료에서 매트 아이콘 크기를 변경하는 방법 (0) | 2023.08.02 |