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

    semplificare questo codice?

    ciao a tutti!
    con la certezza di farvi ridere tutti quanti per lo scempio che ho commesso, mi potete indicare una via più sintetica per rendere questo codice?
    non ci vuole un genio per capire che il giro che ho fatto non è la soluzione migliore!

    Codice PHP:
    $query 'SELECT ' $_GET['campo'] . ' FROM ' $_GET['tabella'] ;
    $result mysql_query ($query$db) or die (mysql_error($db)); $modifica mysql_fetch_array($result); extract($modifica);
    echo 
    '<h1>modifica il campo</h1>'; echo'<form action="altera.php" method="get"> <textarea rows="20" cols="85" style="font-size: 20px;" name="testo_da_mutare">';  if ($_GET['campo']=='infocasa_servizi') { echo  $infocasa_servizi; } 
    else if (
    $_GET['campo']=='infocasa_informazioni') { echo $infocasa_informazioni; }
    else if (
    $_GET['campo']=='come_arrivare') { echo $come_arrivare; } else if ($_GET['campo']=='contatti') { echo $contatti; } else if ($_GET['campo']=='info_prezzi') { echo $info_prezzi; }   else if ($_GET['campo']=='min_giu_sett3'
    { echo 
    $min_giu_sett3; } else if ($_GET['campo']=='max_giu_sett3') { echo $max_giu_sett3; } 
    else if (
    $_GET['campo']=='min_luglio3') { echo $min_luglio3; } else if ($_GET['campo']=='max_luglio3')
     { echo 
    $max_luglio3; } else if ($_GET['campo']=='min_agosto3') { echo $min_agosto3; } else if ($_GET['campo']=='max_agosto3')
     { echo 
    $max_agosto3; } else if ($_GET['campo']=='min_giu_sett') { echo $min_giu_sett; } else if ($_GET['campo']=='max_giu_sett') { echo $max_giu_sett; } else if ($_GET['campo']=='min_luglio'
    { echo 
    $min_luglio; } else if ($_GET['campo']=='max_luglio') { echo $max_luglio; } else if ($_GET['campo']=='min_agosto') { echo $min_agosto; } else if ($_GET['campo']=='max_agosto') { echo $max_agosto; } 
    else if (
    $_GET['campo']=='ferragosto') { echo $ferragosto; } else if ($_GET['campo']=='alta_stagione') { echo $alta_stagione; } else if ($_GET['campo']=='media_stagione') { echo $media_stagione; }
    else if (
    $_GET['campo']=='bassa_stagione') { echo $bassa_stagione; } echo '</textarea>';
     echo 
    '<textarea style="display: none;" name="campo" readonly="readonly">'
    echo 
    $_GET['campo'] . '</textarea>';  echo '<textarea style="display: none;" name="tabella" readonly="readonly">'
    echo 
    $_GET['tabella'] . '</textarea>';     echo '
    <input type=submit name="submit" value="modifica"/>
     <button type="button" id="buttom_pic" onclick="window.location=\'login_amministrazione.html\'">indietro</button>'
    ;  ?> 
    l'url che arriva allo script è questo (con parametri che variano):

    modifica.php?action=edit&campo=come_arrivare&tabel la=testi

    l'alternativa alla quale pensavo era echo '$' . $_GET['campo']; ma non funge, che soluzioni alternative esistono?
    grazie, un saluto

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453

    Re: semplificare questo codice?

    Potresti non mettere tutto il codice su una sola riga cosi da vederlo meglio?

  3. #3
    non ci sono riuscito benissimo, in caso appena finisco di mangiare lo faccio meglio, vedi se riesci a leggere, spero di non essermi mangiato quelche punto e virgola editandolo :/
    grazie!

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Originariamente inviato da myricio
    non ci sono riuscito benissimo, in caso appena finisco di mangiare lo faccio meglio, vedi se riesci a leggere, spero di non essermi mangiato quelche punto e virgola editandolo :/
    grazie!
    Prova semplificato cosi
    Codice PHP:
    <?
    //controlla i campi $_GET prima magari
    $query 'SELECT ' mysql_real_escape_string($_GET['campo']) . ' FROM ' mysql_real_escape_string($_GET['tabella']) ; 
    $result mysql_query ($query$db) or die (mysql_error($db)); 
    $modifica mysql_fetch_array($result);
    ?>
    <h1>modifica il campo</h1><form action="altera.php" method="get"> <textarea rows="20" cols="85" style="font-size: 20px;" name="testo_da_mutare">
    <? 
    if(array_key_exists($_GET['campo'],$modifica)) echo $modifica[$_GET['campo']];
    ?>
    <textarea style="display: none;" name="campo" readonly="readonly">  
    <?echo (!empty($_GET['campo'])) ? $_GET['campo'] : '';?></textarea><textarea style="display: none;" name="tabella" readonly="readonly">  
    <?echo (!empty($_GET['tabella'])) ? $_GET['tabella'] : '';?></textarea>
    <input type=submit name="submit" value="modifica"/> 
     <button type="button" id="buttom_pic" onclick="window.location='login_amministrazione.html'">indietro</button>

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2012
    Messaggi
    159
    ma se usi uno switch non è già almeno più leggibile?

  6. #6
    Hai ragione! Con lo switch è già molto più pulito..
    Ora do un'occhiata anche all'altra soluzione comunque

  7. #7
    Originariamente inviato da RoTeam
    Prova semplificato cosi
    Codice PHP:
    <?
    //controlla i campi $_GET prima magari
    $query 'SELECT ' mysql_real_escape_string($_GET['campo']) . ' FROM ' mysql_real_escape_string($_GET['tabella']) ; 
    $result mysql_query ($query$db) or die (mysql_error($db)); 
    $modifica mysql_fetch_array($result);
    ?>
    <h1>modifica il campo</h1><form action="altera.php" method="get"> <textarea rows="20" cols="85" style="font-size: 20px;" name="testo_da_mutare">
    <? 
    if(array_key_exists($_GET['campo'],$modifica)) echo $modifica[$_GET['campo']];
    ?>
    <textarea style="display: none;" name="campo" readonly="readonly">  
    <?echo (!empty($_GET['campo'])) ? $_GET['campo'] : '';?></textarea><textarea style="display: none;" name="tabella" readonly="readonly">  
    <?echo (!empty($_GET['tabella'])) ? $_GET['tabella'] : '';?></textarea>
    <input type=submit name="submit" value="modifica"/> 
     <button type="button" id="buttom_pic" onclick="window.location='login_amministrazione.html'">indietro</button>
    è perfetto va alla grande! razie!
    quello che mi interessava era proprio la riga

    Codice PHP:
    if(array_key_exists($_GET['campo'],$modifica)) echo $modifica[$_GET['campo']]; 
    in sostanza controlli se esiste l'array con tutti i dati e se è così trammite la sintassi $modifica[$_GET['campo']]; stampi il campo che mi interessa giusto?

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    1,453
    Originariamente inviato da myricio
    è perfetto va alla grande! razie!
    quello che mi interessava era proprio la riga

    Codice PHP:
    if(array_key_exists($_GET['campo'],$modifica)) echo $modifica[$_GET['campo']]; 
    in sostanza controlli se esiste l'array con tutti i dati e se è così trammite la sintassi $modifica[$_GET['campo']]; stampi il campo che mi interessa giusto?
    Non proprio, controlla se la chiave dell'elemento esiste nell'array, e nel caso ci sia
    stampa il rispettivo valore, comunque di nulla e buon lavoro

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.