[PHP] Recoverable fatal error:

Discussione in 'PHP' iniziata da johnnyita1, 14 Novembre 2017.

Tag (etichette):
  1. johnnyita1

    johnnyita1 Nuovo Utente

    Registrato:
    14 Novembre 2017
    Messaggi:
    4
    Mi Piace Ricevuti:
    0
    Punteggio:
    1
    Sesso:
    Maschio
    dato questo form

    <form action="update_dati.php" method="post">

    <div class="form-group">
    <select class=""name="id">

    <?php
    while($datiRiga = mysqli_fetch_assoc($test)){
    $id = $datiRiga['id'];
    echo "<option value='$id'>$id</option>";
    }
    ?>
    </select>
    </div>

    <input type="submit" name="submit" value="Aggiorna" class="btn btn-success">

    e questo
    Codice:
    if(isset($_POST["submit"])){
    
    
    $_POST["username"];
    $_POST["password"];
    $_POST['id'];
    
    $richiesta="UPDATE utenti SET username='$user', password='$pass' WHERE id=$id ";
    
    if(mysqli_query($connessioneDB,$richiesta)) {
    echo "i dati sono aggiornati con successo";
    }else{
      echo "impossibile eseguire $richiesta . mysqli_error($connessioneDB)";
    }
    }
    
    mysqli_close($connessioneDB);
    [\CODE]
    avviando la pagina in chrome mi dà il form se clicco su aggiorna mi dà questo errore:
    
    Recoverable fatal error[/B]: Object of class mysqli could not be converted to string in line42
    
    la riga 42 è questa: [B]echo "impossibile eseguire $richiesta . mysqli_error($connessioneDB)";
    [/B]
     
  2. marino51

    marino51 Utente Attivo

    Registrato:
    28 Febbraio 2013
    Messaggi:
    1.828
    Mi Piace Ricevuti:
    67
    Punteggio:
    48
    Occupazione:
    free lance
    Località:
    Lombardia
    nello script non si vede la connessione al db, forse manca ???
     
  3. johnnyita1

    johnnyita1 Nuovo Utente

    Registrato:
    14 Novembre 2017
    Messaggi:
    4
    Mi Piace Ricevuti:
    0
    Punteggio:
    1
    Sesso:
    Maschio
    al servire si connette, e appena faccio aggiorna
    mi dà questo errore: Recoverable fatal error: Object of class mysqli could not be converted to string 42
    e la stringa 42 è questa:
    echo "impossibile eseguire $richiesta . mysqli_error($connessioneDB)";
     
  4. marino51

    marino51 Utente Attivo

    Registrato:
    28 Febbraio 2013
    Messaggi:
    1.828
    Mi Piace Ricevuti:
    67
    Punteggio:
    48
    Occupazione:
    free lance
    Località:
    Lombardia
    dopo

    PHP:
    if(isset($_POST["submit"])){
    e prima di

    PHP:
    mysqli_close($connessioneDB);
    non si vede nessuna connessione al db,

    "giro" la tua affermazione

    e appena faccio aggiorna, al server si connette ( !!!! )

    come, dove, quando e come lo sai ?

    a me sembra che lo script non esegua ( ma non essendoci gestione d'errore, lo suppongo -> * )

    PHP:
    if(mysqli_query($connessioneDB,$richiesta))
    e di conseguenza "caschi" qui

    PHP:
    echo "impossibile eseguire $richiesta . mysqli_error($connessioneDB)";
    perchè non esiste la connessione espressa nell'oggetto $connessioneDB


    -> * falso / vero non è una gestione d'errore che riporta la causa
     
  5. johnnyita1

    johnnyita1 Nuovo Utente

    Registrato:
    14 Novembre 2017
    Messaggi:
    4
    Mi Piace Ricevuti:
    0
    Punteggio:
    1
    Sesso:
    Maschio
    se faccio run su questo codice mi dà la pagina con echo sei connesso,
    se faccio aggiorna mi dà sempre quell'errore db.jpg db.jpg
    Codice:
    
    <?php
    
    $connessioneDB = mysqli_connect("localhost","root"," ","log");
    
    if ($connessioneDB) {
      echo "Perfetto sei connesso";
    }else{
      die ("impossibile connettersi");
    }
    
    
    $test=mysqli_query($connessioneDB, "SELECT*FROM utenti");
    if (!$test) {
      echo ("messaggio di errore:". mysqli_error($connessioneDB));
    }
    
    
    
    if(isset($_POST["submit"])){
    
    
    $user=$_POST["username"];
    $pass=$_POST["password"];
    $id=$_POST['id'];
    
    
    $richiesta="UPDATE utenti SET username='$user', password='$pass' WHERE id=$id ";
    
    
    
    if(mysqli_query($connessioneDB,$richiesta)) {
    echo "i dati sono aggiornati con successo";
    }else{
    echo "impossibile eseguire $richiesta . mysqli_error($connessioneDB)";
    
    
    }
    }
    
    
    mysqli_close($connessioneDB);
    
    
    
     ?>
    
    
    
    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="utf-8">
        <meta name = "viewport" content="widht=device-widht,initial-scale=1">
       <title>Aggiornare dati in una tabella del database</title>
    
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"
    integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u"
     crossorigin="anonymous">
    
      </head>
      <body>
    
        <div class="cantainer">
    
          <h2 class="bg-success">Aggiornare dati in una tabella del database</h2>
          <div class="col-sm-6">
    
            <form action="update_dati.php" method="post">
    
    
          <div class="form-group">
          <label for="username">nome utente</label>
          <input type="text"name="username" class="form-control">
          </div>
    
           <div class="form-group">
           <label for="password">password</label>
           <input type="password" name="password"  class="form-control">
           </div>
    
    
    
            <div class="form-group">
            <select class=""name="id">
    
                 <?php
            while($datiRiga = mysqli_fetch_assoc($test)){
            $id = $datiRiga['id'];
           echo "<option value='$id'>$id</option>";
           }
              ?>
            </select>
            </div>
    
            <input type="submit" name="submit" value="Aggiorna" class="btn btn-success">
       </div>
    </form>
    
     </div>
        </div>
    
    
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"
    integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa"
    crossorigin="anonymous"></script>
    
     </body>
    </html>
    
    [\CODE]
     
Sto caricando...

Condividi questa Pagina