Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: Javascript con php

  1. #1
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026

    Javascript con php

    Buona sera a tutti.
    Avrei bisogno di capire una cosa.
    Praticamente come si comporta javascript all' interno di un file con codice php.
    Quello che voglio fare e che prima di cancellare qualcosa tramite il seguente codice php
    codice:
    <?php
    		// Cancella tutte le barzellette apparteneti all' autore
    		// insieme al record dell' autore
    		$id = $_REQUEST['id'];
    		$ok1 = @mysql_query("DELETE FROM joke WHERE authorid='$id'");
    		$ok2 = @mysql_query("DELETE FROM author WHERE id='$id'");
    		if ($ok1 and $ok2){
    			echo'
    
    Autore cancellato con successo</p>';
    			} else {
    			echo '
    
    Errore di cancellazione autore dal database!
    ' .
    			'Errore: ' . mysql_error() . '</p>';
    			}
    	?>
    e quello di inserire il codice javascript per la conferma tipo:
    codice:
    <script language="Javascript1.2">
    <!--
    function elimina()
    {
    return confirm("Sei è sicuri di voler eliminare l'autore indicato ?");
    }
    -->
    </script>
    Perchè ho provato a metterlo tra <head></head> del HTML e no và
    poi ho provato a posizionarlo prima del codice php e non và.
    Grazie di una mano.

  2. #2
    Il PHP è lato server, Javascript lato client.

    Per fare quello che chiedi devi inserire il codice PHP in uno script esterno ed eseguire il redirect tramite javascript verso questo script solo se confirm() va a buon fine.

    In alternativa, utilizzare Ajax o tecnologia equivalente.

  3. #3
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Ok adesso ci provo e poi ti dico come è andata.

  4. #4
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Fatto ho implementato il codice php con il codice javascript.
    Adesso ogni volta che voglio cancellare un record devo confermare con un il bottone conferma o con annulla nella finestra popup che mi apre javascript.

  5. #5
    fai attenzione che quel codice così com'è è assolutamente non sicuro. Se ti arriva un id con questo contenuto ti ritrovi il database vuoto:

    codice:
    ' or ''='
    ti consiglio di approfondire problemi inerenti sicurezza e SQL injections.

    Saluti
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  6. #6
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Ciao andr3a.
    Ho fatto una prova con i caratteri che mi hai dato, ma non cancella niente però mi dà come inserimento il numero 1, componendo anche in modo diverso quei caratteri mi danno un errore di query o valori come zero .
    Comunque controllerò la sezione che mi hai dato per la sicurezza dei dati.

  7. #7
    "DELETE FROM joke WHERE authorid='$id'"

    se $id = "' or '' = '"

    diventa

    DELETE FROM joke WHERE authorid='' or '' = ''

    e la query qui sopra ti svuota joke, altro che risultato 1
    stessa cosa per l'altra tabella ... fate attenzione con la sicurezza porca miseria e cambiate tutti i libri di PHP datati < 2009
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  8. #8
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Che ti devo dire, sto provando tutte le soluzioni possibili inserendo nel textbox quello che mi hai dato per inviarle al database, ma l' unica novità mi dice che:
    codice:
    Errore di immissione autore: Truncated incorrect DOUBLE value: '$id = "'
    Poi non saprei più che altro provare.
    Sè hai qualche suggerimento da darmi in merito a qualche funzione per il codice php che migliora la protezione contro gli attacchi al database, sarei lieto di riceverla.
    Comunque ho iniziato a documentarmi sulla protezione del database da attacchi esterni.

  9. #9
    devi studiarti i problemi di sicurezza inerenti le SQL injections ... è un argomento vastissimo quindi fai una ricerca e dagli almeno una letta così capisci di cosa sto parlando.

    Già il fatto che hai un errore piuttosto che un semplice DELETE non andato a buon fine ti fa capisre che c'è qualcosa che non va ... se vuoi ti svuoto il database online, oppure segui il mio consiglio.

    Buona domenica
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  10. #10
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Scusa sè nello script php inserisco quanto segue:
    codice:
    $name = htmlspecialchars($author['name']);
    $email = htmlspecialchars($author['email']);
    può già avere un effetto precauzionale per la protezione, oppure è solo una mia svista?

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.