sepertinya tidak dapat terhubung ke msql, host lokal?

sepertinya saya tidak dapat menjalankan kode ini di bawah host lokal, tujuan saya adalah membuat tabel yang seharusnya ditampilkan di situs web tetapi ketika saya mencoba menghubungkan saya mendapatkan kesalahan:

Peringatan: mysql_connect(): di C:\xampp\htdocs\PhpProject2\hent.php pada baris 5 tidak dapat terhubung

my site name: http://localhost/PhpProject2/hent.php

Kode:

<html>
<body>
<?php 

mysql_connect('<server is here>','<my username here>','<password here>') 
or die('can not connect' );
mysql_select_db('<my username here>') or die ('can not connect to <username here>');  

$sql = "Select * from Customer";
$result = mysql_query($sql);
$number= mysql_num_rows($result);

for($i=0; $i < $number; $i++)
{
    $table = mysql_fetch_row($result);
    echo  $table[0], $table[1];
    echo '<br>';
}
?>
    </body>
</html> 

saya menggunakan xampp dan MySQL berjalan pada port 3306:]

alih-alih ‹ nama pengguna saya di sini >, ‹ server ada di sini >, ‹ kata sandi di sini > ada kode asli :]

saya akan menghargai jawaban apa pun :]


person Madde    schedule 22.01.2013    source sumber
comment
Jika ini adalah kode baru, mulailah dengan menggunakan MYSQLI_ alih-alih MYSQL. MYSQL akan disusutkan mulai PHP 5.5 dan seterusnya.   -  person Mr. Radical    schedule 22.01.2013
comment
Apakah Anda menggunakan kombinasi localhost, nama pengguna, dan kata sandi yang benar? Semuanya harus di , seperti localhost, root dan jika Anda menggunakan pengaturan default.   -  person Mr. Radical    schedule 22.01.2013
comment
maksudmu dengan bukannya og ' '?   -  person Madde    schedule 22.01.2013
comment
Sudahkah Anda mencoba baris perintah? Di panel kontrol XAMPP pilih SHELL. Masukkan di baris perintah mysql -h nama host -u nama pengguna -p. Selanjutnya memberi Anda kata sandi.   -  person Mr. Radical    schedule 22.01.2013
comment
Dalam tanda kutip. Anda juga dapat menggunakan tanda kutip tunggal.   -  person Mr. Radical    schedule 22.01.2013
comment
saya masuk sekarang, sesuatu yang istimewa dapat saya lakukan di sana? :]   -  person Madde    schedule 22.01.2013
comment
Hubungkan ke database dengan nama database connect. Anda dapat melakukan semuanya dengan baris perintah seperti halnya dengan PHP. Saya meminta Anda melakukan ini karena saya perlu memeriksa apakah Anda menggunakan kombinasi host, nama pengguna, kata sandi, dan basis data yang salah.   -  person Mr. Radical    schedule 22.01.2013
comment
sepertinya aku tidak dapat terhubung, tidak yakin apakah aku benar-benar menggunakan nama yang benar, aku relatif baru dalam hal ini :]   -  person Madde    schedule 22.01.2013
comment
Apakah Anda bisa masuk dengan mysql -h hostname -u username -p? Dan tidak dapat terhubung ke database Anda?   -  person Mr. Radical    schedule 22.01.2013
comment
saya bisa masuk dengan msql -h hostname -u nama pengguna -p :], saya coba lagi sekarang sepertinya tidak berfungsi lagi   -  person Madde    schedule 22.01.2013
comment
Bisakah Anda mencoba ini: di panel kontrol pilih tombol admin setelah mysql ini adalah tombol admin kedua dari atas. Selanjutnya Anda akan mendapatkan layar login phpmyadmin. Ketikkan nama pengguna dan kata sandi Anda. Kemudian Anda akan mendapatkan daftar database di sisi kiri. OMONG-OMONG. sudahkah Anda memasukkan data ke database melalui program ini?   -  person Mr. Radical    schedule 22.01.2013
comment
Pertama coba phpmyadmin lihat komentar saya di atas. Jika ini tidak berhasil, lanjutkan dengan saran berikut. Apakah Anda menutup jendela baris perintah sebelum masuk? Saya kira tidak, jadi Anda mungkin masih masuk. Dalam hal ini, masuk lagi tidak akan berhasil. Untuk memastikannya, tutup jendela baris perintah dan buka instance baru melalui panel kontrol. Jika Anda bisa login satu kali, Anda akan bisa login lagi.   -  person Mr. Radical    schedule 22.01.2013
comment
oh, ya, saya melihatnya :], saya biasanya menggunakan msyql workbench dan putty :] saya telah mengubah nama database dan mencoba menjalankan apa yang Anda katakan di bawah, tetapi sepertinya masalahnya masih sama :/   -  person Madde    schedule 22.01.2013
comment
Saya juga menggunakan meja kerja dan dempul MySQL jadi Anda boleh melakukannya. Di meja kerja cari nama database yang Anda gunakan.   -  person Mr. Radical    schedule 22.01.2013
comment
namanya ujian haha ​​:D   -  person Madde    schedule 22.01.2013
comment
tidak berhasil tidak, tapi masalahnya hostnya tidak stabil menurut saya karena berfungsi sebentar saat di sekolah :] saya menerima jawaban Anda :D   -  person Madde    schedule 22.01.2013
comment
Saya tidak mengerti mengapa host menjadi tidak stabil. Saya harus bekerja atau tidak bekerja sama sekali. Apakah Anda menggunakan laptop yang sama dengan xampp terinstal di dalamnya saat Anda berada di sekolah. Jika Anda yakin untuk memulai server Apache dan MySQL melalui panel kontrol atau jika Anda telah menginstal server, periksa melalui panel kontrol apakah sedang berjalan. Untuk memeriksa apakah semuanya berfungsi, Anda juga dapat menjalankan prosedur yang sama seperti pada posting sebelumnya sehubungan dengan netstat. stackoverflow.com/questions/14245474/apache-wont-run -di-xampp   -  person Mr. Radical    schedule 22.01.2013


Jawaban (4)


Coba ini:

<?php
  $host = "hostname";
  $user = "username";
  $password = "password";
  $database = "database";

  $link = mysqli_connect($host, $user, $password, $database);
  If (!$link){
      echo ("Unable to connect to database!");
  }
  else {
  $query = "SELECT * FROM Customer";    
  $result = mysqli_query($link,$query);

  while ($row = mysqli_fetch_array($result, MYSQLI_BOTH)){
   echo  $row['<insert column name>']. "<br>";
  }
}
mysqli_close($link);
?>

Saya telah menggunakan perpustakaan MYSQL dalam kode ini. Anda harus memeriksa apakah kolom Anda di mysql disebut 0 dan 1. B.T.W. Saya menggunakan WHILE alih-alih FOR loop yang hanya merupakan preferensi pribadi.

person Mr. Radical    schedule 22.01.2013
comment
apakah mungkin untuk mengetahui database apa yang saya gunakan? :] - person Madde; 22.01.2013
comment
Di baris perintah ketik SHOW DATABASES; Basis data default adalah: information_schema, cdcol, mysql, performance_schema, phpmyadmin dan webauth. Semua database lainnya bisa menjadi milik Anda. - person Mr. Radical; 22.01.2013
comment
@Madde hanya untuk memastikan apakah Anda membuat atau menambahkan sesuatu ke database menggunakan phpmyadmin/baris perintah/dll. Karena Anda perlu memasukkan data ke dalam database untuk mengeluarkannya ;-) - person Mr. Radical; 22.01.2013
comment
saya tidak memasukkan apa pun dengan no phpadmin, tetapi saya telah memasukkan data ke dalam tabel jika itu yang Anda maksud? :] ex masukkan NILAI Pelanggan(null, 'Hilda', 'Olsen', 'Hakedalsveien 1', '1482'); :) - person Madde; 22.01.2013
comment
@Madde phpMyAdmin adalah program terkenal yang sebanding dengan MySQL Workbench. Namun, MySQL Workbench memiliki antarmuka pengguna terpandu (GUI) yang jauh lebih kuat. phpMyAdmin berada di antara baris perintah murni dari MySQL dan MySQL Workbench yang lebih visual. Ketiganya memungkinkan Anda untuk memasukkan/memilih/menghapus/memperbarui/dll data ke dalam database. - person Mr. Radical; 22.01.2013

Inilah yang dapat Anda lakukan untuk melihat kesalahan Anda:

mysql_connect('<server is here>','<my username here>','<password here>') 
or die('Error: '.mysql_error() );

Dan cobalah untuk tidak menggunakan semua fungsi yang dimulai dengan mysql_*. Mereka saat ini sedang tidak digunakan lagi.

Gunakan mysqli atau pdo

person Ibu    schedule 22.01.2013
comment
oh, terima kasih :] kesalahannya mengatakan kesalahan: Upaya koneksi gagal karena pihak yang terhubung tidak merespons dengan benar setelah jangka waktu tertentu, atau koneksi yang dibuat gagal karena host yang terhubung tidak merespons. - person Madde; 22.01.2013
comment
Bisakah Anda terhubung ke mysql sama sekali? periksa host Anda - person Ibu; 22.01.2013
comment
jika yang Anda maksud di xampp? :] dikatakan bahwa MySQL berjalan pada port 3306, ketika saya mencoba menjalankan dokumen lokal lainnya, itu berfungsi dengan baik - person Madde; 22.01.2013

Saya menyarankan Anda untuk mulai menggunakan PDO;

index.php

<?php 
require "dbc.php";

$getList = $db->getAllData(25);

foreach ($getList as $key=> $row) {
         echo $row['columnName'] .' key: '. $key;
    }
?>

dbc.php

<?php
class dbc {
public $dbserver = 'server';
public $dbusername = 'user';
public $dbpassword = 'pass';
public $dbname = 'db';

function openDb() {    
    try {
        $db = new PDO('mysql:host=' . $this->dbserver . ';dbname=' . $this->dbname . ';charset=utf8', '' . $this->dbusername . '', '' . $this->dbpassword . '');
    } catch (PDOException $e) {
        die("error, please try again " . $e);
    }        
    return $db;
}

function getAllData($qty) {
    //prepared query to prevent SQL injections
    $query = "Select * from Customer where zip= ?";
    $stmt = $this->openDb()->prepare($query);
    $stmt->bindValue(1, $qty, PDO::PARAM_INT);
    $stmt->execute();
    $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
    return $rows;
}    
?>
person Andrew    schedule 22.01.2013

Ini adalah cara saya biasanya terhubung ke database MySQL. Saya punya config.php

<?php

function db_connect(){
   $conn = new mysqli('localhost', 'root', 'leave_black_if_no_password_set', 'database_name');
   if (!$conn) {
      return false;
   }
   $conn->autocommit(TRUE);  
    return $conn;

}

?>

//akhiri konfigurasi

Sekarang, di file Anda yang lain, panggil saja config.php: `include 'config.php';

    <html>
    <body>
    <?php 
    include 'php/config.php';
    $dbCon = db_connect();


    $sql = "Select * from Customer";
    $result = mysqli_query($dbCon, $sql);
    $number= mysqli_num_rows($result);

   while($row=mysqli_fetch_array($result)){
    {
        echo  $row['column_name'];
        echo '<br>';
    }
//close conn
 mysqli_close($dbCon);
    ?>
        </body>
    </html> 
person user1965451    schedule 22.01.2013