При выполнении кода ниже берутся данные из корзины и добавляются в заказы. echo в конце первого запроса, показывает все данныце которые есть в корзине а вот второй запрос не выполлняется. в чем причина PHP: <?php error_reporting(E_ALL); $user="::1"; $i='0'; $phone=999; $goodtype="tire"; $usrdate = date("Y.m.d H:i:s"); $baskorderid="uyjfuyvhb"; $mysqli = new mysqli('localhost', 'root', '', 'project'); $query = "SELECT `user`, `good_id`,`good_qtty`,`producer`,`name`,`price`,`goodtype` FROM `basket` where `user`=? limit ?,1"; if ($stmt = $mysqli->prepare($query)) { $stmt->bind_param("si", $user,$i); $stmt->execute(); $stmt->bind_result($baskuser, $baskuid,$baskqtty,$baskprod,$baskname,$baskprice,$goodtype); while ($stmt->fetch()) { sprintf("%s (%s)\n", $baskuser, $baskuid,$baskqtty,$baskprod,$baskname,$baskprice,$goodtype); } $stmt->close(); echo "$baskuser, $baskuid,$baskqtty,$baskprod,$baskname,$baskprice,$goodtype"; } $mysqli->close(); $mysqli = new mysqli('localhost', 'root', '', 'project'); $query = "INSERT INTO `orders` (`user`,`good_id`,`good_qtty`,`producer`,`name`,`price`,`phone`,`goodtype`,`orderdate`,`orderid`,`ordid`) VALUES(?,?,?,?,?,?,?,?,?,?,?,null)"; if ($stmt = $mysqli->prepare($query)) { $stmt->bind_param("siissiisis", $mysqli->real_escape_string($baskuser), $mysqli->real_escape_string($baskuid),$mysqli->real_escape_string($baskqtty),$mysqli->real_escape_string($baskprod),$mysqli->real_escape_string($baskname),$mysqli->real_escape_string($phone),$mysqli->real_escape_string($baskprice),$mysqli->real_escape_string($goodtype),$mysqli->real_escape_string($usrdate),$mysqli->real_escape_string($baskorderid)); $stmt->execute(); $stmt->close(); } $mysqli->close();
А зачем вы закрываете соединение с mysql и вновь открываете? Если ли в этом какойто практический смысл? Проверте через mysqli->error и $mysqli->connect_errno что пишет во втором случае (может реконнект не проходит по какимто причинам).
@riaron, не поленились бы и добавили вызов и проверку результата mysqli_errno и mysqli_error... А так - посчитайте количество полей таблицы, перечисленных в запросе и количество значений в values.[/USER]