Помогите придумать конструкцию..

6666
На сайте с 10.01.2005
Offline
505
762

Короче, задача такая:

Статическая страница, в нее загружается инклуд.пхп Он задает пользователю вопросы, типа тест. В конце считает баллы, загружает картинку и надпись, типа "Вы молодец, Ваши знания на уровне Онотолеэ Вассермана, возьмите с полки пирожок".

Надпись и картинка меняется, в зависимости от набранных баллов.

Основной потенциальный посетитель - вконтакчик.

А теперь вопрос: Как сделать что бы в конце юзер мог еще и щелкнуть кнопку "поделиться в ВК" и зашарить именно свой результат (картинку с надписью"?

При этом наличие кнопки "поделиться" в течение теста не очень желательно, то есть в хтмл ее встраивать не хочется.

И второе, как бы так настроить что бы кнопка брала в ВК именно надпись и нужную картинку, а не тайтл страницы и первую картинку со страницы?

Есть идеи?

Каждое мое сообщение проверила и одобрила Елена Летучая. (c) Для меня очень важно все что Вы говорите! (http://surrealism.ru/123.mp3) .
t0os
На сайте с 25.02.2008
Offline
64
#1

Для ВК все настраивается - и картинка, и тайтл: http://vk.com/pages?oid=-1&p=%D0%9F%D1%83%D0%B1%D0%BB%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F_%D1%81%D1%82%D0%BE%D1%80%D0%BE%D0%BD%D0%BD%D0%B8%D1%85_%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86

Кнопку "Поделиться" можно на протяжении всего текста хранить в невидимом DIV, а на последнем шаге - открыть. Делается на JavaScript.

6666
На сайте с 10.01.2005
Offline
505
#2

t0os, ага, то самое. Спасибо.

---------- Добавлено 11.05.2012 в 17:01 ----------

*пока только один сложный момент увидел - в настройке публикации можно указать конкретный джипег. А джипеги-то разные будут, в зависимости от результата. (

---------- Добавлено 11.05.2012 в 17:03 ----------

t0os:
можно на протяжении всего текста хранить в невидимом DIV

Ну я думаю, можно и подгрузить в самом конце. Джипег с надписью как-то же загружается..

FernandoDiaz
На сайте с 23.01.2012
Offline
13
#3

Первое, что пришло в голову - это сделать надпись на картинке средствами PHP-GD:

1) Ставим куку юзеру (можно на предпоследней странице теста)

<?php

$setcookie = rand(1, 1000000).'.jpg';

if (!isset($_COOKIE['TestCookie'])) setcookie("TestCookie",$setcookie); ?>

2) В конце подсчитываем результаты, в зав-ти от этого выдаем $path (background картинку) и текст $kakoitotext (image.php)

Файл image.php:


$showcookie = $_COOKIE["TestCookie"];

$path = "https://ssl.gstatic.com/s2/oz/intl/ru/images/mobile-main-baae0a1d70c7666865a68f8375f823c1.jpg";
$im = imagecreatefromjpeg($path);
$kakoitotext = "Магия";
imagettftext ($im, 11, 0, 195, 440, $white, "arial.ttf", $kakoitotext );
header("Content-Type: image/jpeg");
imagejpeg($im, null, 100);
imagejpeg($im, $showcookie, 100);

3) Готовая картинка автоматом загрузится в папку со скриптом в виде 892839.jpg

4) Выводим картинку на финальной странице теста:

<script>

function select_field (field)
{
field.focus();
field.select();
}
</script>
<img src="/image.php" />
<p>Поделитесь картинкой с друзьями:
<input style="padding: 1px; background-color: white; border: 2px inset;" type="text" onclick="select_field(this);" size="55" value="/<?php echo $_COOKIE["TestCookie"] ?>">
</p>

Типа такого в итоге получится:

В общем, думаю идея ясна. Ну, разумеется, допиливать еще немало надо.

6666
На сайте с 10.01.2005
Offline
505
#4

А если просто проописать в результатах коды из вконтакта, типа 0-10 баллов выдается картинка 0.жпг, текст "вы набрали нифига баллов и получаете звание лоха чилийского" и код <a href="http://vkontakte.ru/share.php? img=010.jpg url=http://mysite.com" target="_blank">Поделиться ВКонтакте</a> ? Не проще будет?

Пользователь ВК не осилит если ему будут выдавать что-то сложнее, чем кнопочка по которой надо жмакнуть мышкой..

FernandoDiaz
На сайте с 23.01.2012
Offline
13
#5

6666, ну если надписи статичные, то есессно проще так.

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

Если все статично, то вообще проблем не вижу...

а) Заготавливаете нужное кол-во картинок, загружаете на хост.

б) Кнопке "Завершить тест" добавляете query_string к урлу, мол ?test=finished

в) Подсчитываете рез-ты теста (results)

г) if (results < 5) echo '<img src="/menee5.jpg" />'; и т.д

д) if($_GET['test'] == 'finished') тут код кнопки ВК:

[не проверял]

<script type="text/javascript">

<!--
document.write(VK.Share.button({
url: 'http://site.com',
title: '<?php if( ... < 5) echo 'menee 5' ?>',
description: ''<?php if ( ... < 5) echo 'menee 5 desc' ?>',
image: '<?php if (... < 5) echo 'http:/site.ru/menee5.jpg' ?>',
noparse: true
}));
-->
</script>
6666
На сайте с 10.01.2005
Offline
505
#6

FernandoDiaz, надписи динамические, разные, то есть в зависимости от результата.

В принципе, мне кажется, что если скрипт выдает надписи, то добавить к каждой скрипт от вконтакта с вписанным туда конкретным жЫпегом технически возможно.

Их там не так много, штук тридцать.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий