Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: UPDATE ei onnistu

Sivun loppuun

rauski3 [13.05.2010 18:42:43]

#

En saa tätä php -scriptissä olevaa mysql -kannan päivitystä toimimaan eli numero -kentän arvo ei päivity. Mikä siinä on vialla?

$yhteys = mysql_connect("$DB_Server", "$DB_Username", "$DB_Password") or die("Yhdistäminen ei onnistunut!");

mysql_select_db("$DB_DBName", $yhteys) or die("Tietokantaa ei löytynyt!");

$sql = "UPDATE taulunnimi SET 'numero' = 1  WHERE koodi = '$koodi' AND numero = '0'";

$mysql_haun_tulos = mysql_query($sql, $yhteys);
   print "$mysql_haun_tulos";
   mysql_close($yhteys);

Ruudulle tulostuu pelkkä ykkönen. Onko se virhekoodi ja mistä se kielii?

Macro [13.05.2010 18:48:45]

#

rauski3 kirjoitti:

$sql = "UPDATE taulunnimi SET 'numero' = 1 WHERE koodi = '$koodi' AND numero = '0'";

Mikä idea on laittaa numero-sanan ympärille hipsut? Numeroarvoissakaan ei pitäisi olla niitä.

mysql_query palauttaa joko falsen tai truen, riippuen onnistuiko kysely. 1 = true, 0 = false.

rauski3 [13.05.2010 19:39:38]

#

Ok, mutta toimi ilman niitäkään...

Teuro [13.05.2010 19:42:55]

#

Mistä päättelit, että kenttä ei päivity? Tuolla hakemallasi tavalla et sitä ainakaan saa selville, vaan sinun tulee hakea tiedot tutkia siitä mysql_query funktion paluuarvon tutkiminen ei liene kauhean mielekästä.

Macro [13.05.2010 19:55:30]

#

mysql_result, mysql_fetch_array ja mysql_fetch_assoc palauttavat tietoja tietokannasta.

rauski3 [13.05.2010 20:09:22]

#

Selaimella + phpMyAdmin:lla

Antti Laaksonen [13.05.2010 20:14:48]

#

Kokeile tulostaa SQL-kysely sivulle ennen mysql_query-riviä:

echo $sql;

Onko kysely varmasti oikea? Toimiiko se phpMyAdminin kautta?

rauski3 [13.05.2010 20:22:38]

#

phpMyAdminin kautta tekee kiltisti työtä käskettyä.

Tuo echo $sql; tulostaa update taulunnimi set numero = 1 WHERE koodi = '123' ja kun copypeistaan sen phpMyAdmin:n SQL -kyselyksi, numero -kenttä päivittyy kuten pitää.

Antti Laaksonen [13.05.2010 20:24:14]

#

Toimivatko muut SQL-kyselyt (esim. SELECT) saman PHP-sivun kautta?

Macro [13.05.2010 20:26:17]

#

Koita mysql_error() funktiota, ja laita ini_set("error_reporting", E_ALL); ja ini_set("display_errors", 1);

rauski3 [13.05.2010 21:34:48]

#

$sql = "update taulunnimi set numero = 1 WHERE koodi = '$koodi'"; toimii :) En ymmärrä, miten sain kirjoitettua tuo ainakin 50 kertaa jotenkin väärin. Tuhannet kiitokset avustanne.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta