Benim PHP komut MySQLi MySQL dönüştürme Yardıma ihtiyacınız var?

3 Cevap php

Ben hiç bunu ve bunu yapmak için nasıl makaleler okudum ve hala işe alabilirsiniz hataları elde tutmak için çalışıyorlar MySQLi mysql kullanarak benim komut dönüştürme biraz yardıma ihtiyacım var.

Aşağıda orijinal çalışma yazısıdır.

<?php

require_once ('./mysqli_connect.php'); // Connect to the db.

if (isset($_POST['submitted'])) {

if ($dbc = mysql_connect (DB_HOST, DB_USER, DB_PASSWORD)) { // Make the connnection.

	if (!mysql_select_db (DB_NAME)) { // If it can't select the database.

		// Handle the error.
		trigger_error("Could not select the database!\n<br />MySQL Error: " . mysql_error());
		exit();

	} // End of mysql_select_db IF.

} else { // If it couldn't connect to MySQL.

	// Print a message to the user, include the footer, and kill the script.
	trigger_error("Could not connect to MySQL!\n<br />MySQL Error: " . mysql_error());
	exit();

} // End of $dbc IF.

// grab the tag
$tag = mysql_real_escape_string($_POST['tag']);

// see if the tag already exists and potentially what the current count is
$query = "SELECT id, count, page FROM tags WHERE tag='$tag'";
$result = mysql_query($query);

//--if there is a row, that means the tag exists
if(mysql_num_rows($result))
{
//--pull out the tag ID and the current count and increment by one.
  $tag_info = mysql_fetch_array($result);
  $tag_info_id = $tag_info["id"];
  $tag_info_count = $tag_info["count"] + 1;

//--update the table with the new count
  $sql_update_cnt = "UPDATE tags SET count='$tag_info_count' 
							WHERE id='$tag_info_id'";
  mysql_query($sql_update_cnt);

  echo "$tag now with $tag_info_count instances";
}
else
{
// tag is not there, so insert a new instance
  $query = "INSERT INTO tags (tag, count) VALUES ('$tag', 1)";
if (!mysql_query($query, $dbc))
  {
  die('Error: ' . mysql_error());
  }
echo "1 record added";
}
mysql_close($dbc);
}
?>

İşte ben almaya devam hataları.

Warning: mysqli_select_db() expects exactly 2 parameters, 1 given on line 13

Warning: mysqli_error() expects exactly 1 parameter, 0 given on line 16

3 Cevap

Bu mysql mysqli ile değişen tüm meselesi.

Örneğin, sen mysql_query Burada ne gibi mysqli_query diyebiliriz.

When you call these functions, you need to pass in the database reference as the first parameter.

Mysqli işlev başvurusu bak here

Ben mysql-> mysqli dönüşüm (gibi 2 ya da 3 yıl) yaptık, ama IIRC aynı zamanda parametre sırasını tersine çevirmek için var olduğu için bazı fonksiyonlar vardır çünkü bir süre oldu. Çok güzel, değil mi?

Eğer güçlük geçmesi için gidiyoruz eğer, ben gerçekten PDO yerine düşünün öneriyoruz.