Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL close Connect non può interrompere l'attività di inserimento

Poiché PHP non ti consente di condividere risorse tra richieste (AFAIK), ci sono alcuni modi in cui puoi ottenere questa capacità per interrompere un processo in un'altra richiesta:

prima aggiungi questa riga:

if ( isset ($_POST['start']) ) {
    $_SESSION['continue'] = true;

e poi sostituisci la tua istruzione for con while (sembra che ti importi del numero di iterazioni, in tal caso puoi modificare questo comportamento):

for ($i = 1; $i <= 99999999999; $i++) {

sostituire con:

while ( $_SESSION['continue'] )

e invece di chiudere la connessione per interrompere l'inserimento, fai questo:

mysql_close ($con)

cambierà in:

$_SESSION['continue'] = false;

NOTA:non dimenticare di chiamare session_start() all'inizio del tuo script. Questo è tutto.

Ho presupposto che tu voglia interrompere la pagina dalla stessa sessione, se questo non è il caso puoi usare invece ACP o SHM. ad esempio:

sostituire:

$_SESSION['continue'] = true

con:

apc_store( 'continue', true );

e

while ( $_SESSION['continue'] )

con:

while ( acp_fetch ('continue') )

e

$_SESSION['continue'] = false;

con:

apc_store( 'continue', false );

Fatto!