Нужна помощь с бд и redbeanphp

DevConf 2017 - видео с конференции, успей до 17 июля | Проверенные VDS на SSD в Европе и России

Тема в разделе "PHP и базы данных", создана пользователем Monarch3, 17 мар 2017.

Метки:
  1. Monarch3

    Monarch3 Новичок

    Сообщения:
    7
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    Мне нужно сделать так чтобы по кнопке пользователь мог изменить свой баланс.
    Проблема в том, что я не знаю как у залогиневшегося уже пользователя поменять значение в бд.

    Вот код главной странички. Кто знает помогите пж.

    <?php
    require "db.php";
    ?>

    <?php
    if(isset($_SESSION['logged_user']) ) :
    ?>
    <center>You logged!</center><br>
    <center>Hi, <?php echo $_SESSION['logged_user']->login; ?>!</center>
    <center>Balance: <? echo $_SESSION['logged_user']->bal; ?></center>

    <form method="POST">
    <center>
    <input type="text" name="balance">
    <button type="submit" name="regbal">
    click
    </button>
    </center>
    </form>

    <?

    $_POST = $data;

    if (isset($data['regbal'])){
    $dp = R::find('users','login = ?', $_SESSION['logged_user']->login);
    $dp->bal = $data['balance'];
    R::store($dp);

    }

    ?>

    <hr>
    <center><a href="/logout.php">Exit</a></center>
    <?php else : ?>
    <center><a href="/login.php">login</a></center>
    </br>
    <center><a href="/signup.php">Signup</a></center>
    <?php endif; ?>
     
  2. DIG

    DIG Новичок

    Сообщения:
    259
    Ваш город:
    Тольятти
    Adress:
    Tolyatti, Russia
    Country:
    Location on Map:
    То есть как поменять значение в бд для не залогиневшегося пользователя вы знаете?
    Тогда предложу менять для залогиневшегося точно так же.
     
  3. Monarch3

    Monarch3 Новичок

    Сообщения:
    7
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    Нет, я не понимаю, просто слишком много способов попробовал и все не получились. Можете сказать как?
     
  4. Monarch3

    Monarch3 Новичок

    Сообщения:
    7
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    Вот я немножко переделал, но теперь выдаёт ошибку Fatal error.
    Вот код.
    ---------
    <?php
    require "db.php";
    ?>


    <?php
    if(isset($_SESSION['logged_user']) ) :
    ?>
    <center>You logged!</center><br>
    <center>Hi, <?php echo $_SESSION['logged_user']->login; ?>!</center>
    <center>Balance: <? echo $_SESSION['logged_user']->bal; ?></center>
    <center><? echo $_SESSION['logged_user']->send_time; ?></center>

    <form action="/index.php" method="POST">
    <center>
    <input type="text" name="balance">
    <button type="submit" name="regbal">click</button>
    <?

    $data = $_POST;
    $id = $_SESSION['logged_user']->id;
    $bal = $_SESSION['logged_user']->bal;


    if (isset($data['regbal'])){
    $db = R::exec( 'UPDATE users SET bal = $bal WHERE id = $id' );
    R::store($db);

    }

    ?>
    </center>

    </form>

    <hr>
    <center><a href="/logout.php">Exit</a></center>
    <?php else : ?>
    <center><a href="/login.php">login</a></center>
    </br>
    <center><a href="/signup.php">Signup</a></center>
    <?php endif; ?>
    ----------
    Я в этом деле новичок, и поэтому кто шарит в этой теме прошу помочь(хочется разобраться что не так=) ).
     
  5. DIG

    DIG Новичок

    Сообщения:
    259
    Ваш город:
    Тольятти
    Adress:
    Tolyatti, Russia
    Country:
    Location on Map:
    Ну напишите просто на голом sql запрос который будет делать то, что вам нужно.
    Потом уже переходите к его реализации на php.
    Fatal error хоть в какой строке? Отлаживать, однако, надо...
     
  6. Monarch3

    Monarch3 Новичок

    Сообщения:
    7
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    Да всё нету fatal error'a. Но всё равно не робит))
     
  7. Monarch3

    Monarch3 Новичок

    Сообщения:
    7
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    R:: store убрал..
     
  8. DIG

    DIG Новичок

    Сообщения:
    259
    Ваш город:
    Тольятти
    Adress:
    Tolyatti, Russia
    Country:
    Location on Map:
    Молодец...
    А это действие относилось к отладке или к написанию запроса на чистом sql?
     
  9. Monarch3

    Monarch3 Новичок

    Сообщения:
    7
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    нет))) просто fatal error убралось из-за этого
     
  10. Andkorol

    Andkorol Новичок

    Сообщения:
    847
    Ваш город:
    Украина, Запорожье
    Adress:
    Zaporizhia, Ukraine
    Country:
    Location on Map:
  11. Monarch3

    Monarch3 Новичок

    Сообщения:
    7
    Adress:
    Moscow, Russia
    Country:
    Location on Map:
    PHP:
    <?php
        
    require "db.php";
    ?>


    <?php

    if(isset($_SESSION['logged_user']) ) :
    ?>
    <center>You logged!</center><br>
    <center>Hi, <?php echo $_SESSION['logged_user']->login?>!</center>
    <center>Balance: <? echo $_SESSION['logged_user']->bal; ?></center>
    <center><? echo $_SESSION['logged_user']->send_time; ?></center>

    <form action="/index.php" method="POST">
    <center>   
    <input type="text" name="balance">
    <button type="submit" name="regbal">click</button>
    <?
    ini_set('display_errors',1);
    error_reporting(E_ALL);

     $data = $_POST;
     $id = $_SESSION['logged_user']->id;
     $bal = $_SESSION['logged_user']->bal;


    if (isset($data['regbal'])){
        R::exec( 'UPDATE users SET bal = $bal WHERE id = $id' );
        
    }

    ?>
    </center>

    </form>

    <hr>
    <center><a href="/logout.php">Exit</a></center>
    <?php else : ?>
    <center><a href="/login.php">login</a></center>
    </br>
    <center><a href="/signup.php">Signup</a></center>
    <?php endif; ?>