mysql — php sql вставка запроса — не работает

Старый код обновлен, смотрите ниже. Чтобы люди были в курсе, кто нажимает на эту ветку.

У меня есть эта функция, и она не будет сохранять данные в базу данных.
соединение класса {
public $ host = «localhost»;
public $ user = «root»;
public $ password = «»;
public $ db = «логин»;
public $ dbc;

        function __construct() {
$con = mysqli_connect($this->host, $this->user, $this->password, $this->db);

if(mysqli_errno($con)){
echo"sum error";
}else{
$this->dbc = $con;
echo"connected ";
}
}
}<?php
session_start();
include_once("views/header.php");
include_once("classes/functions.php");

$userid = $_SESSION['userid'];
$body = substr($_POST['body'],0,140);

add_post($userid,$body);
$_SESSION['message'] = "Your post has been added!";

header("Location:information.php");function add_post($userid,$body){
var_dump($userid);
$sql = "INSERT INTO posts (user_id, body, stamp)
values ($userid, '". mysqli_real_escape_string($con,$body). "',time())";

die();
if (mysqli_query($con, $sql)) {
echo "New record created successfully";

} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($con);

это самая новая часть кода, получающая эту ошибку:
Примечание: неопределенная переменная: con в C: \ xampp \ htdocs \ webpage \ classes \ functions.php в строке 34

                function add_post($userid,$body){
$sql = "INSERT INTO posts (user_id, body, stamp) VALUES ($userid, $body, NOW())";
$con;
/* create a prepared statement */
if ($stmt = $con->prepare($sql)) {

/* bind parameters for markers */
$stmt->bind_param("iss", $userid, $body, time());

/* execute query */
$stmt->execute();

if($id = $con->insert_id){
printf("New record created successfully, ID = %d\n", $id);
}else{
echo 'Did not insert any row';
}

/* close statement */
$stmt->close();
}else{
echo "Error: " . $sql . "<br>" . mysqli_error($con);
}
}

-1

Решение

Сработало все хорошо. Пришлось редактировать основную часть кода, чтобы он работал.

  <?php
session_start();
include_once ("views/header.php");
include_once ("classes/functions.php");

$db = new connection();//instance of connection class
$userid = $_SESSION['userid'];
$body = substr($_POST['body'], 0, 140);
$con = $db->get_connnetion();
$insertCount = add_post($con, $userid, $body);
if($insertCount > 0 ){
$_SESSION['message'] = "Your post has been added!";
header("Location:information.php");
}else{
echo "Your post has not been added!";
}
?>
2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector