Risolto: php mi da 404, aggiunto tipo di errore

di il
3 risposte

Risolto: php mi da 404, aggiunto tipo di errore

Salve,

ho fatto una prova di scrittura con php tramite xampp

una semplice scritture anagrafica

ho messo i files in htdocs

l'applicazione parte con localhost, digito i dati

e quando salvo da questo errore

The requested URL was not found on this server.

Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12 Server at localhost Port 500

posto il files

file index.html

<!doctype html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Gestione Anagrafica</title>
</head>
<body>
    <h1>Inserisci Dati Anagrafici</h1>
    <form action="C:\xampp\htdocs\ProvaWeb\Salva.php" method="POST">
        <label for="nome">Nome:</label>
        <input type="text" id="nome" name="nome" required><br><br>

        <label for="cognome">Cognome:</label>
        <input type="text" id="cognome" name="cognome" required><br><br>

        <label for="indirizzo">Indirizzo:</label>
        <input type="text" id="indirizzo" name="indirizzo" required><br><br>

        <label for="citta">Città:</label>
        <input type="text" id="citta" name="citta" required><br><br>

        <label for="cap">CAP:</label>
        <input type="text" id="cap" name="cap" required><br><br>

        <label for="nazione">Nazione:</label>
        <input type="text" id="nazione" name="nazione" required><br><br>

        <input type="submit" value="Salva Dati">
    </form>


</body>
</html>

file salva.php

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento senza titolo</title>
</head>

<body>

//scrittura dati

<?php
// Connessione al database Access
$dsn = 'Driver={Microsoft Access Driver (*.accdb)};Dbq=C:\xampp\htdocs\ProvaWeb\ProvaWeb.accdb';
$conn = odbc_connect($dsn, '', '');

// Verifica se la connessione è avvenuta correttamente
if (!$conn) {
    die('Errore di connessione: ' . odbc_errormsg());
}

// Recupera i dati dal form
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
$indirizzo = $_POST['indirizzo'];
$citta = $_POST['citta'];
$cap = $_POST['cap'];
$nazione = $_POST['nazione'];

// Query di inserimento dei dati nel database
$query = "INSERT INTO anagrafica (nome, cognome, indirizzo, citta, cap, nazione) 
          VALUES ('$nome', '$cognome', '$indirizzo', '$citta', '$cap', '$nazione')";

// Esegui la query
if (odbc_exec($conn, $query)) {
    echo "Dati inseriti con successo!";
} else {
    echo "Errore nell'inserimento dei dati: " . odbc_errormsg();
}

// Chiudi la connessione
odbc_close($conn);
?>

</body>
</html>

3 Risposte

  • Re: Risolto: php mi da 404, aggiunto tipo di errore

       <form action="C:\xampp\htdocs\ProvaWeb\Salva.php" method="POST">

    Questo non funziona di sicuro.

    Questa NON E' una URL, ma il path di un file che il client NON PUO' MINIMAMENTE conoscere.

    Dovrebbe essere "Salva.php" in teoria.

  • Re: Risolto: php mi da 404, aggiunto tipo di errore

    Modificato Salva.php

    ora mi da questo errore

    //scrittura dati
    Fatal error: Uncaught Error: Call to undefined function odbc_connect() in C:\xampp\htdocs\ProvaWeb\Salva.php:21 Stack trace: #0 {main} thrown in C:\xampp\htdocs\ProvaWeb\Salva.php on line 21

    posto il codice

    <!doctype html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>Documento senza titolo</title>
    </head>
    
    <body>
    
    //scrittura dati
    
    <?php
    // Connessione al database Access
    //$dsn = 'provaweb';
    
    $dsn = 'Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=C:\xampp\htdocs\ProvaWeb\ProvaWeb.accdb';
    $username = ''; // 
    $password = ''; // 
    // Crea una connessione ODBC
    $conn = odbc_connect($dsn, $username, $password);
    
    if (!$conn) {
        die("Connessione al database fallita: " . odbc_errormsg());
    }
    
    // Se la connessione è riuscita, visualizza un messaggio di successo
    echo "Connessione al database riuscita!";	
    
    // Recupera i dati dal form
    $nome = $_POST['nome'];
    $cognome = $_POST['cognome'];
    $indirizzo = $_POST['indirizzo'];
    $citta = $_POST['citta'];
    $cap = $_POST['cap'];
    $nazione = $_POST['nazione'];
    
    // Query di inserimento dei dati nel database
    $query = "INSERT INTO anagrafica (nome, cognome, indirizzo, citta, cap, nazione) 
              VALUES ('$nome', '$cognome', '$indirizzo', '$citta', '$cap', '$nazione')";
    
    // Esegui la query
    if (odbc_exec($conn, $query)) {
        echo "Dati inseriti con successo!";
    } else {
        echo "Errore nell'inserimento dei dati: " . odbc_errormsg();
    }
    
    // Chiudi la connessione
    odbc_close($conn);
    ?>
    
    </body>
    </html>
  • Re: Risolto: php mi da 404, aggiunto tipo di errore

    01/12/2025 - Zeusmax ha scritto:

    Fatal error: Uncaught Error: Call to undefined function odbc_connect() in C:\xampp\htdocs\ProvaWeb\Salva.php:21 Stack trace: #0 {main} thrown in C:\xampp\htdocs\ProvaWeb\Salva.php on line 21

    Hai installato e abilitato l'estensione ODBC per PHP?

    Secondo me, devi fare un passo indietro e studiare un attimo quello che serve per far funzionare PHP in generale e le sue estensioni principali.

    Scrivere codice e riportare sul forum ogni singolo errore fermandosi al primo ostacolo non è il massimo. :|

Devi accedere o registrarti per scrivere nel forum
3 risposte