PHP i preklapanje datuma

PHP i preklapanje datuma

offline
  • hmmaki 
  • Novi MyCity građanin
  • Pridružio: 17 Dec 2009
  • Poruke: 5

Dakle, u bazi imam tabele users, admins, expo, i data.
i sad u data tebeli imam podatke o nekom zahtevu klijenta (baza vezana za banku) i izmedju ostalog imam ime, prezime, pol.....i sve te licne podatke i takodje jedne od kolona u toj data tebeli su i : status, datum, nacekanju, predodobren, odbijen, odustao, poslatKlijentu, kompletDokument, vracenoBanka, odobren, preuzet i sad ja treba da na odredjenoj formi kad promenim taj status iz recimo predodobren na odustao, potrebno mi je da u bazi samo za tog klijenta se upise datum na koloni odustao...ali meni to kad odradim upisuje datum za sve klijente u tu kolonu odustao...ima li neko za pomoc? hvala svakako

i ovo mi je kod koji to odradi ali samo za kolonu status, tj lepo promeni i upise koji je status u satatus kolonu ali u same ove dr.kolone mi upise za sve klijente isti datum


Code:
if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form3")) {
if ($_POST['status'] == "Predodobren") {
$what = "predodobren";
} elseif ($_POST['status'] == "Poslat klijentu") {
$what = "poslat";
} elseif ($_POST['status'] == "Poslat banci") {
$what = "poslatubanku";
} elseif (($_POST['status'] == "Odobren") || ($_POST['status'] == "Odbijen")) {
$what = "odoodb";
} elseif (($_POST['status'] == "Odustao") || ($_POST['status'] == "Preuzet")) {
$what = "preuzet";
}

$datum = date("Y-m-d");
$sql = "UPDATE data SET ". $what . " = '" . $datum . "'";

$updateSQL = sprintf("UPDATE data SET status=%s WHERE id=%s",
GetSQLValueString($_POST['status'], "text"),
GetSQLValueString($_POST['id'], "int"));



ovo je za samu formu script:



Code:
<form name="form3" id="form3" method="POST" action="<?php echo $editFormAction; ?>">
<select name="status" id="status">
<option value="Na Cekanju" <?php if (!(strcmp("Na Cekanju", $row_izmeni['status']))) {echo "SELECTED";} ?>>Na Cekanju</option>
<option value="Predodobren" <?php if (!(strcmp("Predodobren", $row_izmeni['status']))) {echo "SELECTED";} ?>>Predodobren</option>
<option value="Poslat klijentu" <?php if (!(strcmp("Poslat klijentu", $row_izmeni['status']))) {echo "SELECTED";} ?>>Poslat klijentu</option>
<option value="Poslat banci" <?php if (!(strcmp("Poslat banci", $row_izmeni['status']))) {echo "SELECTED";} ?>>Poslat banci</option>
<option value="Odobren" <?php if (!(strcmp("Odobren", $row_izmeni['status']))) {echo "SELECTED";} ?>>Odobren</option>
<option value="Odbijen" <?php if (!(strcmp("Odbijen", $row_izmeni['status']))) {echo "SELECTED";} ?>>Odbijen</option>
<option value="Odustao" <?php if (!(strcmp("Odustao", $row_izmeni['status']))) {echo "SELECTED";} ?>>Odustao</option>
<option value="Preuzet" <?php if (!(strcmp("Preuzet", $row_izmeni['status']))) {echo "SELECTED";} ?>>Preuzet</option>
</select>
<input name="id" type="hidden" id="id" value="<?php echo $row_izmeni['id']; ?>" />
<input type="submit" name="Submit" value="Promeni" />
<input type="hidden" name="MM_update" value="form3">
</form>

nadam se da ima nade



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 15 Maj 2006
  • Poruke: 333
  • Gde živiš: Babušnica

$sql = "UPDATE data SET ". $what . " = '" . $datum . "'";

Koliko ja vidim ovde se vrši izmena statusa odnosno upis datuma i mislim da tu treba da dodaš WHERE uslov. Tako će se izmeniti samo za određenu kolonu a ne za sve. Ako grešim odgovoriće ti neko Wink



offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

Upravo tako
bez WHERE upisaće datum za svaki rekord u tabeli.

offline
  • hmmaki 
  • Novi MyCity građanin
  • Pridružio: 17 Dec 2009
  • Poruke: 5

kad mu stavim taj where:

$sql = "UPDATE data SET ". $what . " = '" . $datum . "' WHERE id='%s'" ;

ili
$sql = "UPDATE data SET ". $what . " = '" . $datum . "' WHERE id='%s' LIMIT 1" ;

javljaju mi se greske ovog tipa:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= '2009-12-18' WHERE id='%s' LIMIT 1' at line 1

ili

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= '2009-12-18' WHERE id='%s'' at line 1 Sad

offline
  • Pridružio: 15 Maj 2006
  • Poruke: 333
  • Gde živiš: Babušnica

Hm... meni se čini da promenljiva $what ne uzima nikakvu vrednost, tj. $what = "";

offline
  • hmmaki 
  • Novi MyCity građanin
  • Pridružio: 17 Dec 2009
  • Poruke: 5

pa po ovome izgleda da uzima:

if ((isset($_POST["MM_update"])) && ($_POST["MM_update"] == "form3")) {
if ($_POST['status'] == "Predodobren") {
$_POST['predodobren'] == $datum;
} elseif ($_POST['status'] == "Odbijen") {
$what = "odbijen";
} elseif ($_POST['status'] == "Odustao") {
$what = "odustao";
} elseif ($_POST['status'] == "Datum kurira") {
$what = "datumkurira";
} elseif ($_POST['status'] == "Dostavljeno klijentu") {
$what = "dostavljenoklijentu";
} elseif ($_POST['status'] == "Kompletirana dokumentacija") {
$what = "kompletdokument";
} elseif ($_POST['status'] == "Pristiglo u firmu") {
$what = "pristiglofirmu";
} elseif ($_POST['status'] == "Poslat u banku"){
$what = "poslatubanku";
} elseif ($_POST['status']== "Odobren"){
$what = "odobren";
} elseif ($_POST['status'] == "Preuzet"){
$what = "preuzet";
}
$datum = date("Y-m-d");
$sql = "UPDATE data SET '". $what . "' = '" . $datum . "' WHERE id='%s'";

offline
  • Milan Kragujević
  • tzv. Junior PHP Programer
  • Pridružio: 20 Avg 2011
  • Poruke: 76
  • Gde živiš: Klenovnik, Srbija

gde ti pozivaš taj $sql? koliko ja vidim nisi definisao %s

Ko je trenutno na forumu
 

Ukupno su 1182 korisnika na forumu :: 54 registrovanih, 9 sakrivenih i 1119 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: babaroga, Bane san, banebeograd, Bobrock1, bojcistv, bokisha253, Boris90, bozo13, BraneS, bufanje, ccoogg123, Chainsaw, dane007, Denaya, Dorcolac, Dzoni90, Frunze, GORDI, Insan, jeen yuhs, karirani, kikisp, Koridor, Kriglord, krkalon, Kubovac, mackenzie, Marko Marković, Metanoja, mikrimaus, milenko crazy north, Milicija Krajine, mkukoleca, mnn2, nenad81, Neutral-M, nick79, oldtimer, Petar35, raptorsi, repac, RJ, royst33, S-lash, savaskytec, Shinobi, sombrero, Tandrkalo, theNedjeljko, VJ, vladaa012, voja64, Wrangler, zeo