Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][flash] Dodawanie rekordu do bazy
Forum PHP.pl > Forum > XML, AJAX
marian84
Mam stworzony formularz we Flashu, który ma za zadanie dodanie adresu @ i nazwy uzytkownika do bazy danych.
Dwa pola tekstowe, trzecie do wyswietlenia komuikatu o błędzie, przycisk submit. Kod AS do tego wygląda tak:
Kod
send_btn.onRelease = function() {
    if (imie == "" || mail == "") {
        wiadomosc = "ABY WYSŁAC FORMULARZ NALEŻY WYPEŁNIC WSZYSTKIE POLA";
    }
else {
        mail_form.imie = imie;
        mail_form.mail = mail;
        mail_form.sendAndLoad("formularz.php", mail_odp, "POST");
        mail_odp.onLoad = function(success:Boolean) {
            if (success) {
                wiadomosc = this.content;
                imie = "";
                mail = "";
            } else {
                wiadomosc = "WIADOMOSC NIE ZOSTAłA WYSLANA exclamation.gif!";
            }
        };
    }
};


Plik formularz.php ma za zadanie dodać te informacje do bazy. Kod:
Kod
<?php

$nazwa_bazy='adresy';
$localhost='localhost';
$username='root';
$password='krasnal';

$con=mysql_connect($localhost, $username, $password);
mysql_select_db($nazwa_bazy);

$dodaj= mysql_query("INSERT INTO subskrybcja ( `Id` , `imie` , `adres` )VALUES ('', '".$_GET['imie']."', '".$_GET['adres']."')");

mysql_close($con);


echo '&content=Dziękujemy za wypełnienie formularza.';
?>


Niestety rekordy się nie dodają. Proszę o pomoc w znalezieniu błędu!
flashion
wysyłasz metodą POST:
Cytat
mail_form.sendAndLoad("formularz.php", mail_odp, "POST");

a odbierasz z tablicy GET:
Cytat
mysql_query("INSERT INTO subskrybcja ( `Id` , `imie` , `adres` )VALUES ('', '".$_GET['imie']."', '".$_GET['adres']."')");


zdecyduj się smile.gif
punkomuzykant
Cieniutki jestem z php więc mogłem coś schrzanić ale zrobiłem coś takiego i działa ;p
SQL
Kod
CREATE TABLE `dodawanie` (
      `id` mediumint(8) unsigned NOT NULL auto_increment,
      `tresc` text NOT NULL,
      PRIMARY KEY  (`id`)
    ) TYPE=MyISAM AUTO_INCREMENT=13;


PHP ( test.php)
Kod
<?php
    
    $nazwa_bazy='flash_php_testy';
    $localhost='localhost';
    $username='root';
    $password='krasnal';
    ////////////////////////////////////////////////////
    $con=mysql_connect($localhost, $username, $password);
    mysql_select_db($nazwa_bazy);
    $tresc_php=$tresc_fla;
    $dodaj= mysql_query("INSERT INTO dodawanie (tresc) VALUES ('$tresc_php')");
    mysql_close($con);
    echo '&dane_z_php=Dziękujemy za wypełnienie formularza.';
    ?>


i Action Script
Kod
function pobierz_dane(){
    
        var jakas_tresc:String = "Mam stworzony formularz we FlashuKod AS do tego wygląda tak"
        
    var result_lv:LoadVars = new LoadVars();
        result_lv.onLoad = function(success:Boolean) {
        if (success) {
            trace(this.dane_z_php);
        } else {
            trace("Error connecting to server.");
        }
        };
        var send_lv:LoadVars = new LoadVars();
        send_lv.name = name_ti.text;
        send_lv.sendAndLoad("http://192.168.0.144/~flash_test/kopia sendANDload/test.php?tresc_fla="+jakas_tresc, result_lv, "POST");
    }
    pobierz_dane()


trochę niechciało mi się analizować Twojego kodu więc przerobiłem swój. Teraz Ty się pomęcz smile.gif
aha w Twoim kodzie php było "echo '&content" - nie wiem czy to dobry pomysł przesyłać akurat pod tą nazwą bo jest zastrzeżona dla action scriptu flasha - no ale strzelam
marian84
Wielkie dzięki za wysiłki... błędy które pojawiły się spowodowane były błędami zmiennych jakie przekazywałem do php, oraz oczywiście _get oraz _post (dziekii flashion), pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.