mysql_query PHP yanlış sonra başarıyla yürütülmesi sorgu döndürür

2 Cevap php

Ben bunu başarıyla yürütür (satır DB görünür) ama mysql_query döner false, bir ekleme sorgusu aramak garip bir hata var. Belirli bir alan, bir alt çizgi veya tire içerdiğinde yalnızca yanlış döndürür (veya muhtemelen diğer bazı karakter ama bu şimdiye kadar içine koşuyoruz ikisidir).

"INSERT INTO Hoopoes (name, owner, dbuser, dbpass, package) VALUES "
                        ."('".$this->config['hname']."', '".$this->config['email']."','".$db_prefix.$db_username."','$db_userpass',"
                        ."'".$this->config['package']."')"

Yani bu sorgu. config['hname'] _ ya da - ihtiva ettiği zaman bu başarısız olur. Ben neden anlamıyorum. Satır DB görünür, ama mysql_query hala yanlış döndürür. Herhangi bir fikir çok takdir

2 Cevap

Sen veritabanı sonra bağlayın ve herhangi bir sorgudan önce seçin mus:

// Connect...
mysql_connect("server", "user", "pass");
// ...and select the database!
mysql_select_db("database");

// Now you're good to go. :)

Bunu gibi, şema belirttiğiniz zaman bir veritabanı seçin olmadan INSERT sorguyu kullanabilirsiniz:

mysql_query("INSERT INTO `database`.`table` VALUES (...);

Hmm .. bu bir tuhaf oldu. Sorgu çalışmış ve başarıyla seçilmiş bir veritabanı olmadan görünüşte eklenir. Ben doğrudan sorgu üzerinde bir mysql_select_db çağrıyı ekledi, ve şimdi aynı sadece çalışır, ancak sorgu true döndürür.

Garip

Yardımın için teşekkürler!