Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222

    errore script scolastico su endif

    ciao, sto provando questo script per l'inserimento di autori in un db:

    Codice PHP:
    <html>
    <body>

    <?php
    if (isset($_POST['name']));

    $dbcnx mysql_connect('localhost''user''pwdl');
    if (!
    dbcnx) {

    exit(
    '

    Unable to connect to the ' 
    .
    'database server at this time.</p>');
    }

    if (!
    mysql_select_db('ijdb')) {
    exit(
    '

    Unable to locate the joketables ' 
    .
    'database at this time.</p>');
    }

    $name $_POST['name'];
    $email $_POST['email'];
    $sql "INSERT INTO author SET
    name='
    $name',
    email='
    $email'";
    if (
    mysql_query($sql)) {
    echo 
    '

    New author added</p>'
    ;
    } else {
    echo 
    '

    Error adding new author: ' 
    .
    mysql_error() . '</p>';
    }
    ?>



    [url="<?php echo $_SERVER['PHP_SELF']; ?>"]Add another author[/url]</p>


    [url="authors.php"]Return to aughors list[/url]</p>

    <?php else: // Allow the user to enter a new author ?>

    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">


    Enter the new author:</p>
    <label>Name: <input type="text" name="name" /></label>

    <label>Email: <input type="text" name="email" /></label>

    <input type="submit" value="SUBMIT" />
    </form>
    <?php endif; ?>
    </body>
    </html>
    ma mi torna un errore su questa riga:

    Codice PHP:
    <?php endif; ?>
    cosa c'è che non va?
    grazie
    Si fanno sempre nuove scoperte

  2. #2

  3. #3
    Non puoi mischiare le due sintassi di if/then/else. O usi le graffe per tutti, o usi i due punti per tutti.

  4. #4
    Originariamente inviato da k.b
    Non puoi mischiare le due sintassi di if/then/else. O usi le graffe per tutti, o usi i due punti per tutti.
    E da quando?

    Codice PHP:
    <?php 
    if (true) : 
        echo(
    'TRUE');

        if (
    false) {
            echo(
    'FALSE');
        } else {
            echo(
    'TRUE');
        }
    else:
        echo(
    'FALSE');
    endif;
    ?>

  5. #5
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    grazie delle pronte risposte, ho osservato il link e cercato di capire, qualcosa ho intuito ma non capisco bene. lo script che ho postato cmq è preso da un libro.
    mi spieghereste meglio? ho capito che si tratta di una forma alternativa, ma non ne capisco bene la struttura.
    grazie
    Si fanno sempre nuove scoperte

  6. #6
    Originariamente inviato da filippo.toso
    E da quando?

    Codice PHP:
    <?php 
    if (true) : 
        echo(
    'TRUE');

        if (
    false) {
            echo(
    'FALSE');
        } else {
            echo(
    'TRUE');
        }
    else:
        echo(
    'FALSE');
    endif;
    ?>
    Ovviamente intendevo per *lo stesso* ciclo di controllo. Li' non hai mischiato la sintassi, hai annidato due if diversi.

  7. #7
    Originariamente inviato da k.b
    O usi le graffe per tutti, o usi i due punti per tutti.

    Ovviamente intendevo per *lo stesso* ciclo di controllo. Li' non hai mischiato la sintassi, hai annidato due if diversi.
    Non era molto ovvio, sopratutto visto che sembrava la risposta al quesito di gabar-el.

    @gabar-el
    Come da manuale, devi usare i : non il ; per l'IF

    Codice PHP:
    if (isset($_POST['name'])): 

  8. #8
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    ok grazie. direi di avere capito. praticamente i ":" sostituiscono la graffa sia in apertura che in chiusura. usando i ":" è come aprire la graffa senza bisogno di chiuderla.
    Si fanno sempre nuove scoperte

  9. #9
    Originariamente inviato da filippo.toso
    Non era molto ovvio, sopratutto visto che sembrava la risposta al quesito di gabar-el.
    Hai ragione, avevo letto male il codice.

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