Visualizzazione risultati 1 fino 6 di 6

Discussione: Insert & Update

  1. #1
    Guest

    Predefinito Insert & Update

    Ragazzi devo controllare se esiste la riga associata ad un ID e nel caso esiste aggiornarla, nel caso contrario crearla.
    Sto provando con questo codice, ma non funziona.
    Dove sta l'errore?
    Grazie

    <?
    include("config.inc.php");
    $db = mysql_connect($db_host, $db_user, $db_password);
    mysql_select_db($db_name, $db);
    if ($id == 1) {
    $query = "UPDATE user SET NomeSito = '$NomeSito', NomeCliente = '$NomeCliente', CognomeCliente = 'CognomeCliente', Email = 'Email', Sito = '$Sito', Password = '$Password' WHERE id='1'";
    }
    else{
    $query = "INSERT INTO user (`NomeSito`, `NomeCliente`, 'CognomeCliente', 'Email', 'Sito', 'Password') VALUES ('$NomeSito', '$NomeCliente', '$CognomeCliente', '$Email', '$Sito', '$Password')";
    }
    if (mysql_query($query, $db))
    header("Location: http://");
    exit;
    mysql_close($db);
    ?>

  2. #2
    Guest

    Predefinito

    if ($id == 1) { --> non ha senso, non esiste una variabile $id se prima non fai un'estrazione...

    cioè
    devi prima fare una query di select per quell'id (SELECT.... WHERE id=$id), poi se esiste aggiornare la riga corrispondente (UPDATE.... WHERE id=$id), altrimenti
    $query = "INSERT INTO user (`NomeSito`, `NomeCliente`, 'CognomeCliente', 'Email', 'Sito', 'Password') VALUES ('$NomeSito', '$NomeCliente', '$CognomeCliente', '$Email', '$Sito', '$Password')";

  3. #3
    Guest

    Predefinito

    Non ho capito molto, non è che me la potresti riscrivere corretta?
    Grazie.

  4. #4
    Guest

    Predefinito

    <?
    include("config.inc.php");
    $db = mysql_connect($db_host, $db_user, $db_password);
    mysql_select_db($db_name, $db);
    $query = "SELECT id WHERE id='$id'";
    if ($db->sql_numrows($query))==1 {
    $query = "UPDATE user SET NomeSito = '$NomeSito', NomeCliente = '$NomeCliente', CognomeCliente = 'CognomeCliente', Email = 'Email', Sito = '$Sito', Password = '$Password' WHERE id='1'";
    }
    else{
    $query = "INSERT INTO user (`NomeSito`, `NomeCliente`, 'CognomeCliente', 'Email', 'Sito', 'Password') VALUES ('$NomeSito', '$NomeCliente', '$CognomeCliente', '$Email', '$Sito', '$Password')";
    }
    if (mysql_query($query, $db))
    header("Location: http://");
    exit;
    mysql_close($db);
    ?>

    p.s. mi racomando imposta la colonna id come unique....

  5. #5
    Guest

    Predefinito

    Buongiorno!
    Mi da questo errore:

    Parse error: parse error, unexpected T_IS_EQUAL in /membri/kickoff/admin/saveuser.php on line 6

  6. #6
    Guest

    Predefinito

    Risolto modificando il file di installazione del database e facendogli impostare dei valori di default. In questo modo la riga con ID 1 esiste sempre e a questo punto ho impostato solo la query per l'update.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •