• User Attivo

    Comincio con il progettare la cosa secondo la tua base...se ho problemi posto....:)


  • User Attivo

    Scusami...per conoscere l id del profilo della bacheca su cui sto scrivendo devo usare get?Cioè se io Marco scrivo sulla bacheca di Paolo per ricavarmi Paolo devo usare il Get giusto?


  • User Attivo

    Si, se hai nell'url l'id utente del proprietario della bacheca.

    Per esempio, se sono sulla bacheca di Paolo, potrei avere un url di questo tipo: http ://nwww.miosito.net/?page=wall&profile=IDPAOLO
    Dove al posto di IDPAOLO vi è ovviamente l'id di Paolo.

    Ciao


  • User Attivo

    Sono arrivato qui

    //collego il post alla bacheca di Y
    3.query:"INSERT into Bacheca (user_ID,post_ID) VALUES ([ID di Y],[ID del Post scritto]);

    Come faccio a recuperarmi l id dell ultimo post inserito??

    Avevo fatto cosi'

    [PHP]
    $query = "INSERT into post (content,writer_id) VALUES ('$testo', '$id')";
    $result = @mysql_query($query) or die (mysql_error());
    $ultimo_id = mysql_insert_id();

    [/PHP]
    Mi da valore 0 però $ultimo_id nel database


  • User Attivo

    Strano, se la query va a buon fine, mysql_insert_id() dovrebbe restituirti giusto l'id(chiave primaria autoincrementata) dell'ultimo inserimento.

    Il problema potrebbe essere questo, tratto dal manuale ufficiale:

    "The ID generated for an AUTO_INCREMENT column by the previous query on success, 0 if the previous query does not generate an AUTO_INCREMENT value, or FALSE if no MySQL connection was established. "Post ha un campo id(o il nome che gli hai dato) settato come chiave primaria e con autoincremento?


  • User Attivo

    Ho risolto...ora che ho terminato con gli insert non mi resta che cominciare con la visualizzazione


  • User Attivo

    Ottimo!
    Solo per curiosità, qual'era il problema?


  • User Attivo

    Ho risolto diciamo in maniera "casareccia"
    Ho creato due query separate

    [PHP]
    //qui recupero l id dell ultimo post inserito
    $strsqlultima100="SELECT id FROM post ORDER BY id DESC LIMIT 1";
    $query100=mysql_query("$strsqlultima100") or die("Errore query database: " . mysql_error());

    while ($riga100 = mysql_fetch_array($query100)) {

    $ultimoid=$riga100['id'];

    //inserimento in bacheca
    $query33 = "INSERT into bacheca (user_id,post_id) VALUES ('$idamico','$ultimoid')";
    $result33 = mysql_query($query33) or die (mysql_error());

    }
    }[/PHP]
    Con mysql id mi dava sempre 0 come risultato


  • User Attivo

    Però così sprechi risorse.
    Qualcosa non va nel codice o nel database(molto più probabilmente).

    Se id è con autoincremento, non dovrebbe restituire 0.
    0 lo restituisce solo quando la query eseguita non comprende un campo che viene incrementato automaticamente.


  • User Attivo

    Ora funziona
    [PHP]
    if (isset($_POST['message_wall']))
    {

    //inserisco nella tabella post il contentuto l id unico di chi scrive e l id unico di chi riceve il messaggio
    $testo=addslashes($_POST['message_wall']);
    $query = "INSERT into post (content,writer_id,id_ricevente) VALUES ('$testo', '$id','$idamico')";
    $result = mysql_query($query) or die (mysql_error());
    $ultimo_id = mysql_insert_id();

    //inserisco in bacheca l id dell ultimo post inserito e l id univoco di chi scrive
    $query33 = "INSERT into bacheca (user_id,post_id) VALUES ('$idamico','$ultimo_id')";
    $result33 = @mysql_query($query33) or die (mysql_error());

    [/PHP]