Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,805

    reperire ID ancora non generato

    salve ragazzi scrivo questo trehad per chiedere consigli , vi spiego come riesco ! inserisco nel database il titolo nel post , e in un altra query inserisco il contenuto , automaticamente la prima query genera un id dove andrà inserito il contenuto ...... adesso inserisco da una popup il files e dovrei generare l id del contenuto solo che non riesco a pensare una soluzuine :
    Codice PHP:
    function AddNewThread($forumid,$title,$opened,$status,$levelforum,$displayorder,$urlredirect,$enabledbbc,$enabledsmiles,$enabledsignature ,$forumtext)
    {
      global 
    $dbcore,$RCW ;

         
    $result $dbcore->query("INSERT INTO `forumpost` (`forumpostid`,`forumid`,`title`,`description`,`dateadd`,`dateedit`,`userid`,`opened`,`status`,`view` ,`countreplay`,`levelforum`,`displayorder`,`urlredirect`,`enabledbbc`,`enabledsmiles`,`enabledsignature` )VALUES( 
         NULL ,
         '"
    intval($forumid)."',
         '"
    $dbcore->escape($title)."',
         '',
         '"
    time()."',
         '',
         '"
    .$dbcore->escape($RCW['user']['userid'])."',
         '"
    .intval($opened)."',
         '"
    .  intval($status)."',
         '0',
         '0',
         '"
    .  intval($levelforum)."',
         '"
    intval($displayorder)."',
         '"
    .$dbcore->escape($urlredirect)."', '".intval($enabledbbc)."', '".intval($enabledsmiles)."', '".intval($enabledsignature)."'
         )"
    )or die(mysql_error());
         
         if(!
    $result){return false;}
         
    $insert_id    $dbcore->insert_id();
     
    $res $dbcore->query("INSERT INTO `forumpostdata` (`forumpostdataid`,`forumid`,`forumtext`,`dateadd`,`dateedit`,`userid`,`keypost` )
     VALUES( NULL, '"
    intval($insert_id)."','"$dbcore->escape($forumtext)."' ,'"time()."','','".$dbcore->escape($RCW['user']['userid'])."','1')")or die(mysql_error());    
     
          if(!
    $res){return false;}
     
          return 
    true  


    e qui salvo il files :
    Codice PHP:
    function AddFilesDB($name ,$filessize)
    {
       global 
    $dbcore,$RCW ;
           if(empty(
    $name))
          {
                   return 
    false;
          }
                  if(!
    file_exists("../images/upload/"$name))
                 {
                   
    $filesname =   $name 
                 }    else {
                   
    $filesname  =  time() .'-'$name;
                     
    rename  "../images/upload/".  $name,  "../images/upload/"$filesname );
                    }
      
    $dbcore->query("INSERT INTO `attachment` (`attachmentid`,`filesid`,`filesname`,`originalname`,`filescomments`,`onpage`,`filessize`,`dateadd`,`dateedit` )VALUES(NULL,'','".$filesname."','".$name."','' ,'1','".$filessize."' ,'".time()."','' )  ");
      return 
    true;
    }
    function 
    AddFiles$files  ,  $patch $name ,$filessize)
    {
    if(empty(
    $files))
    {
        return 
    false;
    }
     
    $up =   move_uploaded_file($files $patch );
     if(!
    $up){return false;}
      
    $res AddFilesDB($name  ,$filessize);
     if(!
    $res){return false;} 
    return 
    true;

    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  2. #2
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    ma di preciso quale è il campo di cui hai difficoltà a reperire il valore?
    Il calcolatore è straordinariamente veloce, accurato e stupido.
    L'uomo è incredibilmente lento, impreciso e creativo.
    L'insieme dei due costituisce una forza incalcolabile.
    (Albert Einstein)

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,805
    Ciao grazie per aver risposto ! Dovrei reperire l id che genera mysql_insert_id() che sarebbe forumpostdataid , questo perché se l utente inserisce una nuova discussione e prima d inserire titolo e testo se uno inserisce un allegato dovrebbe inserire l id del testo da dove richiamare il files
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  4. #4
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    Quote Originariamente inviata da rocco.mod Visualizza il messaggio
    Ciao grazie per aver risposto ! Dovrei reperire l id che genera mysql_insert_id() che sarebbe forumpostdataid , questo perché se l utente inserisce una nuova discussione e prima d inserire titolo e testo se uno inserisce un allegato dovrebbe inserire l id del testo da dove richiamare il files
    ma lo reperisci già con questo:

    Codice PHP:
    $insert_id    $dbcore->insert_id(); 
    quindi credo che il tuo problema sia passarlo da una pagina a un altra, giusto? se è così devi lavorare sul link con il quale richiami la popup per inserire i files.
    Il calcolatore è straordinariamente veloce, accurato e stupido.
    L'uomo è incredibilmente lento, impreciso e creativo.
    L'insieme dei due costituisce una forza incalcolabile.
    (Albert Einstein)

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,805
    Grazie dovrei passarlo tramite funzione perché le query sono in 2 files diversi quindi tramite funzione
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,805
    Tipo [php] function id($id){return $id;} e alla query in alto inserire : $insert_id =$dbcore->insert_id(); e id($inssert_id);
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,805
    Ciao ! Io avrei fatto così: alle funzioni passo 2 valori type e ID , il type se è add: cerca l ID del trhed tramite id che passo io , a sua volta con l id che estraggo vado ad estrarre l id del contenuto e lo incremento di 1 $row['id']+1; soltanto che se decido d inserire più di un allegato a sua volta mi incrementa l ID sempre di 1 cosa potrei fare! Grazie
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  8. #8
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    ma la funzione addFilesDB quando la richiami? se nel punto in cui la richiami sai il valore di id (e normalmente dovresti saperlo) ti basta passarglielo come parametro ed è fatta.
    Il calcolatore è straordinariamente veloce, accurato e stupido.
    L'uomo è incredibilmente lento, impreciso e creativo.
    L'insieme dei due costituisce una forza incalcolabile.
    (Albert Einstein)

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,805
    Grazie ancora ! Comunque in alto sono le 3 funzioni una inserisce i dati nel db tipo titolo è contenuto e l altra inserisce l allegato
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    1,805
    Codice PHP:
    function AddNewThread($forumid,$title,$opened,$status,$levelforum,$displayorder,$urlredirect,$enabledbbc,$enabledsmiles,$enabledsignature ,$forumtext)
    {
      global 
    $dbcore,$RCW ;

         
    $result $dbcore->query("INSERT INTO `forumpost` (`forumpostid`,`forumid`,`title`,`description`,`dateadd`,`dateedit`,`userid`,`opened`,`status`,`view` ,`countreplay`,`levelforum`,`displayorder`,`urlredirect`,`enabledbbc`,`enabledsmiles`,`enabledsignature` )VALUES( 
         NULL ,
         '"
    intval($forumid)."',
         '"
    $dbcore->escape($title)."',
         '',
         '"
    time()."',
         '',
         '"
    .$dbcore->escape($RCW['user']['userid'])."',
         '"
    .intval($opened)."',
         '"
    .  intval($status)."',
         '0',
         '0',
         '"
    .  intval($levelforum)."',
         '"
    intval($displayorder)."',
         '"
    .$dbcore->escape($urlredirect)."', '".intval($enabledbbc)."', '".intval($enabledsmiles)."', '".intval($enabledsignature)."'
         )"
    )or die(mysql_error());
         
         if(!
    $result){return false;}
         
    $insert_id    $dbcore->insert_id();
     
    $res $dbcore->query("INSERT INTO `forumpostdata` (`forumpostdataid`,`forumid`,`forumtext`,`dateadd`,`dateedit`,`userid`,`keypost` )
     VALUES( NULL, '"
    intval($insert_id)."','"$dbcore->escape($forumtext)."' ,'"time()."','','".$dbcore->escape($RCW['user']['userid'])."','1')")or die(mysql_error());    
     
          if(!
    $res){return false;}
     
          return 
    $insert_id


    se invece di usare retur true metto return $insert_id come potrei recuperare l id da un altra funzione ! sto esaurendo e non ho ancora trovato una soluzione
    Non è tanto importante saper fare,quanto ad avere voglia d imparare .

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 © 2026 vBulletin Solutions, Inc. All rights reserved.