Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    $_POST in query update non va...problema strano!?

    Ciao ragazzi, sono ore che mi sto scervellando su questo problema.
    Spero sia veramente una stupidaggine e che sia io il cretino che non se ne sta accorgendo.

    Il problema è il seguente, in una query stupidissima update se inserisco una variabile che prende un valore che le do direttamente funziona, se invece uso $_POST[variabile] non va.

    Il problema è che questa $_POST[variabile] quando faccio un echo me la legge, ma nella mysql_query non funge...ecco il codice:

    if ($_GET["mode"] == "modify"){
    $result = mysql_query("select id from $tabella");
    while ($r = mysql_fetch_array($result)){
    $n = $r["id"];
    $value = $_POST["value" . $n];
    $item = $_POST["item" . $n];
    echo $item;


    if (mysql_query("update $tabella set item = '$item', value = '$value' where id = $n")) {

    e altro codice che non serve.
    A parte il mio codice rozzo e antico, non capisco come mai non funziona. Mi fa l'update ma inserisce valori vuoti.

    l'echo $item che vedete da il risultato giusto e ho provato pure a mettere direttamnete $_POST["item" . $n] nella query spezzandola con gli apici e i punti ma non va uguale.

    Però se faccio:

    $item = "valore a caso";
    allora funziona.

    Sono due ore che sono bloccato su questa cosa :S
    Dove è l'errore stupido che non riesco a vedere?

    Grazie.

    p.s. ho pure pensato che fosse un problema dei campo del db come item e value, ma non pare diano problemi...

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Prova così:
    Codice PHP:
    if (mysql_query("update " $tabella " set item = '" $item "', value = '" $value ."' where id = " $n)) 

  3. #3
    ma come mai utilizzi parametri provenienti sia da $_GET che da $_POST?
    Nel form HTML che "method" hai specificato?

  4. #4
    chiama la stessa pagina con un paio di get, la tabella e il modifica che gli fa capire che deve fare l'update.

    L'action è questo:

    modifica_servizi.php?modifica=1&tabella=<? echo $tabella; ?>

    il method è post.

    Mi ricordo che c'era qualcosa che incasinava GET e POST insieme, ma legge comunque entrambi i valori...

    cmq, ho risolto usando il \ perchè a quanto pare intanto c'era una problema di ' nei campi inseriti. Avevo risolto mandando il tutto ad una pagina nuova, ma quando poi ho rimesso lo script nella pagina con il form continua a fare un update vuoto e mi cancella i dati

  5. #5
    Ok, ho sistemato levando l'invio delle variabili dall'action e utilizzando degli hidden field che invio come post.

    Ora funziona tutto.
    Grazie mille

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.