- Home
- Categorie
- Coding e Sistemistica
- Coding
- Script php
-
Comincio con il progettare la cosa secondo la tua base...se ho problemi posto....:)
-
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?
-
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
-
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
-
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?
-
Ho risolto...ora che ho terminato con gli insert non mi resta che cominciare con la visualizzazione
-
Ottimo!
Solo per curiosità, qual'era il problema?
-
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
-
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.
-
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]