ugrás a tartalomhoz

UPDATE és INSERT parancsot nem hajtja végre..

Anonymous · 2006. Szep. 28. (Cs), 10.59
Sziasztok,

Az történt, hogy egyik napról a másikra egyszercsak nem hajtotta végre az INSERT utasítást a script. Nem tudom mi lehet a probléma. Tegnap előtt még frankón működött, tegnap már nem! Ugyanaz a forráskód. Az első részt elvégzi, "majd a másikat is"..és echo OK...csakhogy a második résznél nem szúr be értékeket a táblába. Segítsetek, mi lehet az ok?

<?php
settype($id,"integer");
settype($prefx,"string");
settype($uzenet,"string");
settype($telefonszam,"string");
settype($kategoria,"integer");

if ($kategoria == 1) {
} elseif ($kategoria == 4) {
} elseif ($kategoria == 6) {
} elseif ($kategoria == 9) {
} elseif ($kategoria == 11) {
}

switch ($kategoria) {
case 1:$szam = 1; break;
case 4:$szam = 3; break;
case 6:$szam = 7; break;
case 9:$szam = 17; break;
case 11:$szam = 40; break;
}

$q = "UPDATE versenyzok SET szavazat=szavazat+$szam WHERE ic_kod='$uzenet'";

mysql_query($q);

$p = "INSERT INTO sms(id,uzenet,telefonszam,kategoria) VALUE ($id,$uzenet,$telefonszam,$kategoria)";

mysql_query($p);


echo "OK";
mysql_close($kapcsolat);
?>

Minden működik, csak az sms táblában nem szerepelnek az értékek.

Köszönöm.
SZJ
 
1

szintaktika?

toro · 2006. Szep. 28. (Cs), 11.22
az INSERTnel a $uzenet, $telefonszam stringek kore kene '-ot tenni
2

UPDATE és INSERT parancsot nem hajtja végre..

Anonymous · 2006. Szep. 28. (Cs), 11.22
Az INSERT parancsot kipróbálhatnád helyesen is, tehát VALUE helyett VALUES kulcsszó használatával, ezen kívül, bár nem látható, hogy mik vannak a változókban, általában szükséges a string típusú adatok köré aposztrófot tenni. Számoknál se ártalmas, de ott nem muszáj.
$p = "INSERT INTO sms(id,uzenet,telefonszam,kategoria) VALUES ($id,'$uzenet','$telefonszam','$kategoria')";
Az if-es szerkezet mit csinál? A hibaüzeneteket is kiirathatnád magadnak, akkor rögtön látnád, hogy hol a hiba.

Gyulus
(kiváncsi vagyok, ezt a hozzászólásomat is törli-e az éber moderátor... :-)
3

re

montressor · 2006. Szep. 28. (Cs), 11.24
probald meg

mysql_query($p) or die("Adatbázis hiba: mysql hibaüzenet:".mysql_error($conn));

hatha rizsal vmt
4

RE:

Anonymous · 2006. Szep. 28. (Cs), 21.16
Nem ír ki semmit, mert szervertől kapom az adatokat.

Nem látom. Ez a fájl csak feldolgozza. Amúgy, mint mondtam, eddig is ezt használtam, hibamentesen, de tegnaptól nem működik az INSERT!

****************** 10 perccel később

Az '' volt a gond. Nem értem, hogy működhetett eddig hibamentesen, de most megint ok. Köszönöm.

SZJ