PHP birden fazla güncelleme ifadeleri yürütme

1 Cevap php

PHP yürütülecek üç güncelleme ifadeleri var, ben dönüş parametreleri olarak tüm bu değerleri alıyorum. Independely her deyimini yürütmek ve nihayet son kullanıcıya başarıyla güncelleştirilmiş olduğunu sonucunu göstermek için nasıl.

<?php 

        public function name($parameter1,$parameter2.... $parametern) {


        }

 ?>

Sonra nasıl nihayet benim satır nesne sonuç alabilirsiniz.

1 Cevap

Ah ben görüyorum, iyi hepiniz 'tycodashboard' bağlı 3 farklı tabloları güncellemek istediğiniz güncelleme tablolar bana görünüyor.

Bu durumda ben bir başarısız olursa başka söylüyorlar, veri bütünlüğü biraz korumak için işlemler kullanmak tavsiye? bazı verileri kaybetmiş olacak. Genel bir kural olarak, fazla 1 güncelleme yapmak gerekiyorsa aynı anda işlemler kullanmak.

Konuyla ilgili İşte büyük bir makale: http://dev.mysql.com/doc/refman/5.0/en/commit.html

Onun yapmak oldukça kolay, sadece emin tablolar InnoDB kullandığınızdan emin olun, o zaman yapmanız gereken tüm sql komut üstüne BAŞLANGIÇ TRANSACTıON eklemek ve daha sonra sonunda COMMIT olduğunu.

Ben birden fazla tablo güncelleme kulüpler ne zaman, tek bir fonksiyonun içine çok fazla birleştirmek için çalışıyor olabileceğini, sadece yerine bir dönüş içine hepsini şeyler için çalışmak yerine, sırayla her birini işlemek için daha kolay. Öyleyse değerleri geçen sql komut her biri için ana işlevi onu aramak, başarı veya başarısızlık dönen, onu kurtaran bir işlevi yapmayı deneyin.

//This is the function that gets called from your page.
public function my_called_function() {

    //your sql script (using "" means you can put variables in without having to remove the quotes)
    $sql = "UPDATE....SET 'col' = $_POST['myvalue']";

    //Run your script and get result
    $result = $this->save_my_stuff($sql);

    //if not null means success!
    if($result) {
        echo 'success!'; // your success message
    }
    else {
        echo 'something bad happened'; //your failure message
    }
}

//this is the function that does the saving!
private function save_my_stuff($sql_script) {

    //Make connection
    $conn = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
    //Check connection
    if(!$conn) {
        //connection failed
        die('Could not connect: '.mysql_error());
    }

    //Select your database using your connection object
    mysql_select_db(DB_NAME, $conn);

    //try and save
    try {
        //run the query
        $result = mysql_query($sql_script, $conn);

        //return the result
        return mysql_result($result);
    }
    catch (Exception $e) {
        //deal with exception
        return null;
    }

    //close connection
    mysql_close();
}