Привет там после нескольких часов попытки и поиск Интернет у меня есть проблема, чтобы получить мои данные в моей базе данных MySQLВставить массив Mysqli
Код:
// Create connection
$conn = new mysqli($servername, $username, $password, $database);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
include('simple_html_dom.php');
$html = file_get_html('http://www.cardplayer.com/poker-players');
$theData = array();
foreach($html->find('.table-lined tr') as $row) {
$rowData = array();
foreach($row->find('td') as $cell) {
$rowData[] = $cell->plaintext;
}
$length = count($theData);
for ($i = 1; $i < $length; $i++) {
$sql = "INSERT INTO playernames (playername, location, winnings, mostcash)
VALUES ('".$theData[$i][0]."','".$theData[$i][1]."','".$theData[$i][2]."','".$theData[$i][3]."')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
Я получаю следующее сообщение об ошибке:
Error: INSERT INTO playernames (playername, location, winnings,mostcash) VALUES (' Joseph Cheong ',' La Mirada, CA, USA','$11,216,031')
Вы вставляете 3 значения в 4 столбца –
и не вставляете $ или запятые в число, сохраняете его необработанным. –
Вам лучше использовать [подготовленные заявления] (http://php.net/manual/en/mysqli.quickstart.prepared-statements.php) – FirstOne