Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 31.08.2018
Сообщений: 25

Проблема с выводом числа в PHP

25.11.2018, 23:24. Показов 1303. Ответов 15

Студворк — интернет-сервис помощи студентам
У меня проблема, для начала хочу задать задачу в php файле для добавление в моем случаи числа в таблицу базы данных только с разбиванием строки на подстроки.

в базе данных у меня таблица
PHP
1
$traun['chash']='0,0,0,0,0'
мне нужно что бы во второе число добавлялась нужная цифра

код который я использую


PHP
1
2
3
4
5
6
<?php
$chash=explode(",",$traun['chash']);
 
$chash[1]+=3
?>
<?=$chash[1]*3?>
вывод у меня выходит число 9 теперь мне нужно число 9 поместить в моем случаи $traun['chash']='0,9,0,0,0' сюда, я делаю это так:

PHP
1
mysql_query("UPDATE user SET `chash`=`chash`+'".$chash[1]."' ;");
После чего получаю выход
PHP
1
$traun['chash']='9'
а мне нужно что бы было
PHP
1
$traun['chash']='0,9,0,0,0'
подскажите что я не так делаю


P.S прошу прощения если что не правильно или может странное написал, только изучаю.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.11.2018, 23:24
Ответы с готовыми решениями:

Проблема с + чисел и выводом числа PHP
Прошу прощения если надоедаю, очень нужна ваша помощь довести до конца код, мне уже помогали добрые люди, но я так и не смог довести до...

Проблема с выводом числа
Есть код, при введенных числах 2000000 800000 программа выводит 4е+06. Есть ли какая-то функция, которая может вывести это число в...

Проблема с добавление числа PHP
Здравствуйте, хочу сделать функцию, с помощью которой можно добавлять в базу данных нужное количество чисел! Вот код: ...

15
 Аватар для arava
340 / 135 / 70
Регистрация: 30.06.2014
Сообщений: 717
25.11.2018, 23:37
dalus,
PHP
1
2
3
4
5
6
7
8
9
10
$array = [];
 
$traun['chash']='0,0,0,0,0';
$array = explode(',',$traun['chash']);
$array[1] += 3;
$array[1] *= 3;
$traun['chash'] = implode(',',$array);
 
 
var_dump($traun['chash']);
1
0 / 0 / 0
Регистрация: 31.08.2018
Сообщений: 25
26.11.2018, 00:17  [ТС]
А что бы на выходе через mysql_query("UPDATE никак?
0
 Аватар для arava
340 / 135 / 70
Регистрация: 30.06.2014
Сообщений: 717
26.11.2018, 00:24
dalus, операция UPDATE как бы буквальных данных не возвращает... Вы изменяете данные заранее подготовленными данными...
1
0 / 0 / 0
Регистрация: 31.08.2018
Сообщений: 25
26.11.2018, 01:55  [ТС]
Ну в целом мне нужно при нажатии " кнопки N " пошел запрос в БД именно на эту строку
$traun['chash']='0,0,0,0,0'; только во второй подстроке добавить цифру 9 и при выходе должно получится
PHP
1
$traun['chash']='0,9,0,0,0';
если еще раз нажать должно получится
PHP
1
$traun['chash']='0,18,0,0,0';
а у меня же получается
PHP
1
$traun['chash']='8';
а после еще одного нажатия
PHP
1
$traun['chash']='18';
ваш код я не совсем понял, еще раз извиняюсь, не могли б вы конкретно указать? если не составит труда
0
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
26.11.2018, 06:12
Смотрите, explode вы разделяйте цифры, заносите нужное число, а implode собираем обратно, с новым значением и заносим в базу
Ваш вариант : вы разделили, обновили, а кто соединять будет?
0
0 / 0 / 0
Регистрация: 31.08.2018
Сообщений: 25
26.11.2018, 07:49  [ТС]
Немного понятно теперь, только не понятно кое что

PHP
1
2
3
4
5
6
7
8
9
10
$array = [];
 
$traun['chash']='0,0,0,0,0';
$array = explode(',',$traun['chash']);
$array[1] += 3;
$array[1] *= 3;
$traun['chash'] = implode(',',$array);
 
 
var_dump($traun['chash']);
Как мне тогда указать на выход в БД, т.к я привык добавление делать через операцию UPDATE, то есть я запутался с выходом добавлению в БД
0
 Аватар для arava
340 / 135 / 70
Регистрация: 30.06.2014
Сообщений: 717
26.11.2018, 11:51
dalus,
Цитата Сообщение от dalus Посмотреть сообщение
Ну в целом мне нужно при нажатии " кнопки N " пошел запрос в БД
на этом этапе нужно сделать операцию SELECT chash FROM `ваша_таблица`
далее Вы получите значение chash, к примеру это будет '0,0,0,0,0'
теперь Вам нужно увеличить второе значение после запятой :
PHP
1
2
3
4
5
6
7
8
9
$array = [];
 
$traun['chash']='0,0,0,0,0';
$array = explode(',',$traun['chash']);
$array[1] += 9;
$traun['chash'] = implode(',',$array);
 
$chash = $traun['chash'];
mysql_query("UPDATE user SET `chash` = $chash");
1
0 / 0 / 0
Регистрация: 31.08.2018
Сообщений: 25
26.11.2018, 17:02  [ТС]
Вы все верно указали именно через mysql_query("UPDATE мне нужно добавить

ваш код

PHP
1
2
3
4
5
6
7
8
9
$array = [];
 
$traun['chash']='0,0,0,0,0';
$array = explode(',',$traun['chash']);
$array[1] += 9;
$traun['chash'] = implode(',',$array);
 
$chash = $traun['chash'];
mysql_query("UPDATE user SET `chash` = $chash");
Я попробовал протестировать, но выдало вообще ошибку после этого я убрал строку
PHP
1
 $array = [];
и заработало, только вот в таблице
PHP
1
$traun['chash']='0,0,0,0,0';
которая находится в таблице user должно появится
PHP
1
$traun['chash']='0,9,0,0,0';
а на самом деле ничего не добавилось, вы уж извините за мою тупость но в чем я ошибся?
0
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
26.11.2018, 17:09
Цитата Сообщение от dalus Посмотреть сообщение
mysql_query("UPDATE user SET `chash` = $chash");
PHP
1
mysql_query("UPDATE user SET `chash` = '$chash'")
может так заработает
1
0 / 0 / 0
Регистрация: 31.08.2018
Сообщений: 25
26.11.2018, 17:22  [ТС]
Заработало забыл закрыть строку скобками, только вот цифры не додаются, как добавил в моем случаи +9 так и цифра 9 на месте стоит не додается, хотя после 2 кликов должно быть уже 18
0
 Аватар для tarasalk
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
26.11.2018, 17:56
Цитата Сообщение от dalus Посмотреть сообщение
только вот цифры не додаются, как добавил в моем случаи +9 так и цифра 9 на месте стоит не додается, хотя после 2 кликов должно быть уже 18
Дак что вы ожидали то если вы с нуля начинаете каждый раз.
Цитата Сообщение от dalus Посмотреть сообщение
$traun['chash']='0,0,0,0,0';
Получайте актуальную строку из БД и потом уже увеличивайте счетчики.
0
0 / 0 / 0
Регистрация: 31.08.2018
Сообщений: 25
26.11.2018, 19:44  [ТС]
Она и есть актуальная строка
0
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
26.11.2018, 22:28
Значит не актуальная " нужно из базы брать, где код?
0
0 / 0 / 0
Регистрация: 31.08.2018
Сообщений: 25
27.11.2018, 21:49  [ТС]
PHP
1
2
3
4
5
6
7
8
 
$traun['chash']='0,0,0,0,0';
$array = explode(',',$traun['chash']);
$array[1] += 9;
$traun['chash'] = implode(',',$array);
 
$chash = $traun['chash'];
mysql_query("UPDATE user SET `chash` = '$chash' ");
Код полностью работает,за что больше спасибо всем кто выше писал помогло, но как я уже говорил помогло но не совсем, а именно в таблицу user где находится структура chash мне нужно было, что бы при клике добавляло каждый раз нужное число, в моем случаи это цифра 9, по коду выше все работает, после клика добавляет 9 в базе прописывает сразу

PHP
1
$traun['chash']='0,9,0,0,0';
После еще одного клика, так же остается на месте, вот моя вся проблема в том что мне нужно что бы при каждом клике цифра додавалась, к примеру после двух кликов уже было

PHP
1
$traun['chash']='0,18,0,0,0';
и т.д Что я не так сделал ?

прошу помощи, помогите пожалуйста




P.S постарался как можно понятней объяснить мою проблему
0
 Аватар для arava
340 / 135 / 70
Регистрация: 30.06.2014
Сообщений: 717
28.11.2018, 12:14
dalus, ну выше я же приводил пример что нужно выполнять сначала операцию SELECT , чтобы получить значение chash до апдейта...


1. кликаем на кнопку
2. получаем значение с БД через SELECT chash FROM `table`;
3. берем значение chash с пункта "2" ;
4. добавляем к этому значению число 9 ;
5. выполняем UPDATE ;

может Вы не знаете как получить chash через SELECT , так скажите от этом

Добавлено через 10 минут
PHP
1
2
3
4
5
6
7
8
9
10
// $conn это Ваше подключение к БД 
$sql = "SELECT chash FROM user LIMIT 1"; // обращаю внимание что я беру первое значение с таблицы user (может нужно по другому)
$result = mysql_query($conn, $sql);
 
if (mysql_num_rows($result) > 0) {
   $row = mysql_fetch_assoc($result);
   var_dump($row);  // здесь ваш 0,9,0,0,0
 
   // далее по коду что бы написан выше этого поста
}
cheers :-)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.11.2018, 12:14
Помогаю со студенческими работами здесь

Проблема с выводом
Здравуствуйте, при создании одной програмы(которая шифрует текст, выводит зашифрованый текст, а потом выводит расшифрованый текст),...

Проблема с выводом
Есть кусок текста, который надо проанализировать. Решил запихнуть текст в переменную. Проблема в том, что когда я вывожу переменную, у меня...

Проблема с выводом
Здравуствуйте, при создании одной програмы(которая шифрует текст, выводит зашифрованый текст, а потом выводит расшифрованый текст),...

Проблема с выводом
Когда программа завершается завершается признаком конца ввода ( сочетание ctrl + d) вместе с выводом в консоль выходит строчка...

Проблема с выводом
Здравствуйте.Приношу извинения за банальный вопрос,но ,к сожалению, никак не могу разобраться самостоятельно. Проблема: -Код: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 01.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 31.01.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru