Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    problema con mysql_insert_id

    Ciao a tutti, ho un problema con la funzione mysql_insert_id()
    attraverso la mia pagina PHP effettuo una prima operazione di INSERT in una tabella 'student', quindi carico la variabile
    Codice PHP:
    $idDelRecord =mysql_insert_id(); 
    se faccio, a titolo di controllo:
    Codice PHP:
    printf ("Last inserted record has id %d\n"mysql_insert_id()); 
    echo 
    "$idDelRecord"
    in entrambi i casi vedo che il valore restituito è corretto.
    A questo punto avrei bisogno di verificare se il valore di una
    codice:
    <textarea name="testo" rows="50" cols="100"></textarea>
    è NULL oppure no, ma purtroppo devo aver sbagliato qualcosa in quanto
    Codice PHP:
    $boole is_null($_POST["testo"]); 
    restituisce sempre '1'
    Poi avrei bisogno di scrivere in una seconda tabella solo se la variabile $boole è FALSE
    Codice PHP:
    if(!$boole){

    $toInsertMod "INSERT INTO  modTesto (`contenutoTesto` ,`numeroidDelRecord` )VALUES ('".$_POST["testo"]."',  '".$_POST["$idDelRecord"]."')";

    e questa INSERT non funziona mai.... non scrive nulla nella tabella
    Qualcuno è così gentile da aiutarmi...
    grazie

  2. #2
    Utente di HTML.it L'avatar di mrseo88
    Registrato dal
    Jan 2012
    residenza
    Italia
    Messaggi
    75
    ma le due query sono nella stessa pagina php ?

  3. #3

  4. #4
    Utente di HTML.it L'avatar di mrseo88
    Registrato dal
    Jan 2012
    residenza
    Italia
    Messaggi
    75
    Per controllare il testo usa
    Codice PHP:
     !empty 
    e quindi il codice sarà
    Codice PHP:

    if(!empty ($_POST["testo"])){

    $toInsertMod "INSERT INTO  modTesto (`contenutoTesto` ,`numeroidDelRecord` )VALUES ('".$_POST["testo"]."',  '".$idDelRecord."')";




  5. #5
    avevo già provato, non funziona,
    posto il blocco di codice che forse aiuta:
    Codice PHP:
    //prima query
    $toBeInserted "INSERT INTO student (....) values (...)";
    MySQL_query($toBeInserted) or die("Errore invio query string"); 

    $idDelRecord =mysql_insert_id();

    //seconda query
    if(!empty($_POST["testo"])){

    $toInsertMod "INSERT INTO  `school`.`modificati` (`contenutoRecord` ,`numeroContatore` )VALUES ('".$_POST["testo"]."',  '".$idDelRecord"')";

        
    MySQL_query($toInsertMod) or die("Errore invio query string"); 


  6. #6
    Utente di HTML.it L'avatar di mrseo88
    Registrato dal
    Jan 2012
    residenza
    Italia
    Messaggi
    75
    mysql_query deve essere minuscolo
    e poi controlla se hai la stringa di connessione al db .

    Non ho capito il significato di
    Codice PHP:
     'school'.'modificati' 
    se è il nome della tb è più corretto scrivere
    Codice PHP:
     school_modificati 

  7. #7
    anche cambiando da maiuscolo a minuscolo il risultato è invariato (in ogni caso funziona anche come lo avevo scritto prima, in altra query).
    'school'.'modificati' era un mio errore di trascrizione, ma nella string è corretto si tratta della tabella 'modificati' (scusa).
    il fatto è che se scrivo un semplicissimo if, senza la query dentro il risultato è deludente:

    Codice PHP:
       $textarea $_POST['testo']; 
       if(!empty(
    $textarea)){
       echo 
    "OK";} 
    non stampa nulla, sia che io abbia riempito la textarea che no, quindi il problema sembra legato al capire se è empty o meno.....

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.