Visualizzazione risultati 1 fino 2 di 2

Discussione: non mi invia il segnale i commenti

  1. #1
    socialedge non è connesso Utente giovane
    Data registrazione
    24-07-2016
    Residenza
    Aversa
    Messaggi
    60

    Exclamation non mi invia il segnale i commenti

    Ho inserito un nuovo script per i commenti solo che mi viene visualizzato correttamente ma non mi registra i commenti inviati.
    Lo script essenzialmente è formato da poche pagine ovvero: "comment.sql", "ajax_comment.php", "jQuery.js" e "home.php".
    In caso voleste provare per mano cosa intendo basta cliccare qui ed accedere al sito. Senza perdermi in giri di parole i file sono:

    comment.sql
    Codice PHP:
    CREATE TABLE `comment` (
    `
    id` int(8) NOT NULL AUTO_INCREMENT,
    `
    user_id` int(8) NOT NULL,
    `
    photo_id` int(8) NOT NULL,
    `
    comment` text NOT NULL,
    `
    date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (`user_id`, `photo_id`)
    );
    jquery.js
    Codice PHP:
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    <script>
    $(document).ready(function(){
    var form = $('form');
    var submit = $('#submit');

    form.on('submit', function(e) {
    // prevent default action
    e.preventDefault();
    // send ajax request
    $.ajax({
    url: 'ajax_comment.php',
    type: 'POST',
    cache: false,
    data: form.serialize(), //form serizlize data
    beforeSend: function(){
    // change submit button value text and disabled it
    submit.val('Submitting...').attr('disabled', 'disabled');
    },
    success: function(data){
    // Append with fadeIn see http://stackoverflow.com/a/978731
    var item = $(data).hide().fadeIn(800);
    $('.comment-block').append(item);

    // reset form and button
    form.trigger('reset');
    submit.val('Submit Comment').removeAttr('disabled');
    },
    error: function(e){
    alert(e);
    }
    });
    });
    });
    </script>
    ajax_comment.php
    Codice PHP:
    <?php
    // code will run if request through ajax
    if (isset( $_SERVER['HTTP_X_REQUESTED_WITH'] )):
    include(
    '../config.php');
    // connecting to db
    dbConnect();

    if (!empty(
    $_SESSION['user_id']) AND !empty($_POST['photo_id']) AND !empty($_POST['comment'])) {
    // preventing sql injection
    $user_id = $_SESSION['user'];
    $photo_id = $_POST['photo_id'];
    $comment = $_POST['comment'];

    // insert new comment into comment table
    mysql_query("INSERT INTO comment (user_id, photo_id, comment) VALUES('$user_id', '$photo_id', '$comment')");
    }
    ?>
    <!-- sending response with new comment and html markup-->
    <div class="comment-item">
    <div class="comment-avatar">
    <a href="<?php echo $baseurl . "/" . $photo_username ?>"><img src="./core/getimg.php?profiloimg=<?php echo $photo_userid ?>" class="home-foto-profilofoto" /></a> </div>
    <div class="comment-post">
    <h3><?php echo $photo_username . "/" . $user_id ?> <span>ha commentato:</span></h3>
    <p><?php echo $comment?></p>
    </div>
    </div>

    <?php
    // close connection
    dbConnect(0);
    endif
    ?>
    Ed il form nella home.php, premetto di aver incluso "ajax_comment.php" e "jQuery.js". E il risultato finale del form è:
    Codice PHP:
    <form id="form" method="post">
    <!-- need to supply post id with hidden fild -->
    <input type="hidden" name="comment" value="1">
    <label>
    <a href="<?php echo $baseurl . "/" . $photo_username ?>"><img width="25"
    height="25"src="./core/getimg.php?profiloimg=<?php echo $photo_userid ?>" class="home-foto-profilofoto" /></a>
    </label>
    <label>
    <a href="<?php echo $baseurl . "/" . $photo_username; ?>"><?php echo $photo_username; ?></a>

    </label>
    <label>
    <span>Commenta</span>
    <textarea name="comment" id="comment" cols="0" rows="0" placeholder="Scrivi un commento.." required></textarea>
    </label>
    <input type="submit" id="submit" value="Submit Comment">
    </form>
    <?php
    include ("ajax_comment.php");
    ?>
    <!-- Fine commenti -->
    </div>
    Come dicevo, non riesco a capire quale sia l'errore, qualche persona di buona voltà mi potrebbe aiutare ?
    Vi ringrazio di cuore.

  2. #2
    L'avatar di LastWings
    LastWings non è connesso AlterGuru
    Data registrazione
    14-10-2006
    Messaggi
    1,628

    Predefinito

    Onestamente direi che hai da sistemare prima altro, a partire dal codice stesso utilizzato.

    Tanto per farti un esempio, l'uso di mysql_query che ormai è deprecato, non vedo la tua funzione di connessione al database, ma immagino cosa sia purtroppo.

    Se stai imparando adesso il php e myqsl, basandoti su qualche guida, forse è meglio che cambi fonti e ne prendi di più aggiornate e riparti con una base che sia adeguata ai tempi attuali.


    http://php.net/manual/en/language.oop5.php
    http://php.net/manual/en/book.mysqli.php
    http://php.net/manual/en/pdo.prepared-statements.php
    https://www.phpjabbers.com/how-to-pr...php-php71.html
    Ultima modifica di LastWings : 07-06-2017 alle ore 03.46.16
    Ecchi Paradise - Frammenti Perduti - Semplici Parole - Recensioni ed Opinioni

    Non contattatemi privatamente per ricevere supporto, per queste cose esiste il forum pubblico
    .

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •