[risolto] Ciclo di un array con azioni diverse

  • Creatore Discussione Creatore Discussione Furion
  • Data di inizio Data di inizio
ciao
si d'accordo, ma in quel caso che vuoi fare tu contiene i nomi o gli id?
ma tu hai detto (nel post in cui hai messo il risultato) che l'utente scrive uno o più nomi?
sii più preciso
 
Oddio scusa, che confusione che ho fatto :S comunque devo usare per forza i nomi: l'utente posta uno o più nomi, dai quei nomi postati vorrei ricavare gli id_user da un'altra tabella(character) e inserirli nei rispettivi id_membro1-10... quindi ad esempio se sul primo scrivo paolo e sul terzo giacomo faccio la query con questi due nomi cercando in character e sulla tabella creazione_clan setto id_membro1 = paolo e id_membro3 = giacomo ( se rimane più comodo/facile posso anche inserirli in ordine nella tabella, cioè anche se giacomo era sul terzo input nella tabella magari è al secondo posto così da metterli in fila...poi non so dimmi tu cosa ti sembra meglio). Poi chiaramente questo "invito" va mandato sotto forma di messaggio quindi una volta che ho i vari id_membro1-10 o id_user(tanto sono gli stessi) devo inserire per i vari id un messaggio nella tabella dedicata ai messaggi. Esempio: ho scritto paolo come nome, ho fatto la query con il suo nome e mi sono ricavato l'id che mettiamo essere 3, inserisco sotto forma di update nel campo id_membro1-10 della tabella creazione_clan il numero 3 e sotto forma di insert nel campo destinatario della tabella messaggi sempre il 3. Spero di essere stato più chiaro ora...la stanchezza mi sta uccidendo :S
 
Ultima modifica:
ciao
ancora un piccolo problema (sempre che non abbia capito male), mi spiego
tu hai una tabella con
id | nome
intanto come si chiama?
da cui in base al nome ricavere l'id dell'utente/i che viene scritto nel form
in base a questi id vai ad uppare le tabella character (scrivo dei numeri a caso)

"UPDATE character SET id_membro1 = 33, id_membro3 = 59 WHERE id_capoclan = $id_capoclan;"

giusto?
 
No allora dalla tabella character prendo gli id in base ai nomi ottenuti dal form quindi:

SELECT id_user FROM character WHERE nome IN ($lista_nomi_dal form);

poi con gli id ricavati vado su creazione_clan:

UPDATE creazione_clan SET id_membro1 = 10, id_membro2 = 20 WHERE id_capoclan = $id_capoclan;"

la tabella character è divisa in id|id_user|nome

la tabella creazione_clan è divisa in id|nome_clan|id_membro1|id_membro2.....|id_membro10|confirm_membro1|confirm_membro2....|confirm_membro10|id_capoclan
 
Allora mi sono portato avanti col codice e sono arrivato a questo:

PHP:
$submit = $_POST['submit'];

if(isset($submit)){

$nome_membri = array_filter(array_map(null,  $_POST['nome_membri']));

$lista_nome_membri =   "".implode("','", $nome_membri)."";

  if(empty($lista_nome_membri))
  {
  die ("Devi selezionare almeno un membro!");
  }

$sql_id_membri = "SELECT * FROM `character` WHERE `nome` IN ('$lista_nome_membri')";
$res_sql_id_membri = mysql_query($sql_id_membri) or die (mysql_error());
while($riga_id_membri = mysql_fetch_array($res_sql_id_membri)){
$id_membri = $riga_id_membri['id_user'];
}

foreach($nome_membri as $key => $value){

   if(isset($value)){
      echo 'Variable: '.($key+1).' is set to '.$value.'<br/>';
   }
}
}

adesso ho gli id_membri e so quali input sono settati(se il primo, il secondo, o terzo etc) adesso rimane solo da associarli insieme e fare la query.
Nello script $value mostra il nome dell'utente, io dovrei cambiarlo con il suo rispettivo id, e $key corrisponde al numero dell'input (quindi nel caso della foto saranno 6 e 8) come fare per mettere tutto insieme?
 

Discussioni simili