Deprecated: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in /var/www/mybb-es.com/html/inc/class_language.php on line 201
Problema con código para plantilla
Páginas (2): 1 2   
Kevinex   30 Mar, 2011, 3:26 pm
#1

Bueno xD, tengo un problema con el spam ultimamente, se me registran boots y quiero evitar eso, active el captcha es un plugin externo la cosa es que me va bien funciona perfecto por lo que sé, ahora yo uso un plugin page manager algo así se llama, que tiene un .xml de un formulario de contacto, he creado una página nueva que será contacto.php todo esta bien, pero ahora quiero poner el code que tiene el .xml en el contacto.php lo intenté pero sale carácteres raros xD Si pudieran ayudarme en eso.. estaria agradecido, el code es este (del formulario)

[spoiler=Spoiler]
Código:
<?php

global $headerinclude, $header, $theme, $footer, $templates, $lang;

$lang->load('member');
$lang->load('messages');
$lang->load('datahandler_user');

$subject = htmlspecialchars_uni(trim($mybb->input['subject']));
$message = htmlspecialchars_uni(trim($mybb->input['message']));

if(!$mybb->user['uid'])
{
    $name = htmlspecialchars_uni(trim($mybb->input['name']));
    $email = htmlspecialchars_uni(trim($mybb->input['email']));

    $usertemplate = '<tr>
<td width="40%" class="trow1"><strong>{$lang->full_name}</strong></td>
<td width="60%" class="trow1"><input type="text" class="textbox" size="50" name="name" value="{$name}" /></td>
</tr>
<tr>
<td width="40%" class="trow2"><strong>{$lang->email_address}</strong></td>
<td width="60%" class="trow2"><input type="text" class="textbox" size="50" name="email" value="{$email}" /></td>
</tr>';

    $usertemplate = str_replace("\'", "'", addslashes($usertemplate));

    eval("\$usertemplate = \"" . $usertemplate . "\";");
}
else
{
    $name = $mybb->user['username'];
    $email = $mybb->user['email'];

    eval("\$usertemplate = \"" . $templates->get('changeuserbox') . "\";");
}

if($mybb->input['action'] == 'do_email' && $mybb->request_method == 'post')
{
    verify_post_check($mybb->input['my_post_key']);

    if(empty($name))
    {
        $errors[] = $lang->userdata_missing_username;
    }
    elseif(strpos($name, '<') !== false || strpos($name, '>') !== false || strpos($name, '&') !== false || my_strpos($name, '\\') !== false || strpos($name, ';') !== false || strpos($name, ',') !== false)
    {
        $errors[] = $lang->userdata_bad_characters_username;
    }

    if(empty($email))
    {
        $errors[] = $lang->userdata_missing_email;
    }
    elseif(!validate_email_format($email))
    {
        $errors[] = $lang->userdata_invalid_email_format;
    }

    if(empty($subject))
    {
        $errors[] = $lang->error_no_email_subject;
    }

    if(empty($message))
    {
        $errors[] = $lang->error_no_email_message;
    }

    if($mybb->settings['captchaimage'] == 1 && function_exists("imagepng") && !$mybb->user['uid'])
    {
        $imagehash = $db->escape_string($mybb->input['imagehash']);
        $imagestring = $db->escape_string($mybb->input['imagestring']);
        $query = $db->simple_select('captcha', '*', 'imagehash="' . $imagehash . '"');
        $imgcheck = $db->fetch_array($query);
        if(my_strtolower($imgcheck['imagestring']) != my_strtolower($imagestring) || !$imgcheck['imagehash'])
        {
            $errors[] = $lang->error_regimageinvalid;
        }
        $db->delete_query('captcha', 'imagehash="' . $imagehash . '"');
    }

    if(count($errors) == 0)
    {
        if($mybb->settings['mail_handler'] == 'smtp')
        {
            $from = $email;
        }
        else
        {
            $from = $name . ' <' . $email . '>';
        }
        my_mail($mybb->settings['adminemail'], '[' . $mybb->settings['bbname'] . ' ' . $pages['name'] . '] ' . $subject, $message, $from, '', '', false, 'text', '', $email);

        redirect($mybb->settings['bburl'], $lang->redirect_emailsent);
    }
    else
    {
        $errors = inline_error($errors);
    }
}

if($mybb->settings['captchaimage'] == 1 && function_exists('imagepng') && !$mybb->user['uid'])
{
    $randomstr = random_str(5);
    $imagehash = md5(random_str(12));
    $imagearray= array(
        'imagehash' => $imagehash,
        'imagestring' => $randomstr,
        'dateline' => TIME_NOW
    );
    $db->insert_query('captcha', $imagearray);
    eval("\$captcha = \"" . $templates->get('post_captcha') . "\";");
}

$template = '<html>
<head>
<title>' . $pages['name'] . '</title>
{$headerinclude}
</head>
<body>
{$header}
{$errors}
<form action="' . $_SERVER['REQUEST_URI'] . '" method="post">
<input type="hidden" name="my_post_key" value="{$mybb->post_code}" />
<table border="0" cellspacing="' . $theme['borderwidth'] . '" cellpadding="' . $theme['tablespace'] . '" class="tborder">
<thead>
<tr>
<td colspan="2" class="thead">
<strong>' . $pages['name'] . '</strong>
</td>
</tr>
</thead>
<tbody>
{$usertemplate}
<tr>
<td width="40%" class="trow1"><strong>{$lang->email_subject}</strong></td>
<td width="60%" class="trow1"><input type="text" class="textbox" size="50" name="subject" value="{$subject}" /></td>
</tr>
<tr>
<td valign="top" width="40%" class="trow2"><strong>{$lang->email_message}</strong></td>
<td width="60%" class="trow2"><textarea cols="50" rows="10" name="message">{$message}</textarea></td>
</tr>
{$captcha}
</tbody>
</table>
<br />
<input type="hidden" name="action" value="do_email" />
<div align="center"><input type="submit" class="button" value="{$lang->send_email}" /></div>
</form>
{$footer}
</body>
</html>';

$template = str_replace("\'", "'", addslashes($template));

add_breadcrumb($pages['name']);

eval("\$page = \"" . $template . "\";");

output_page($page);

?>
[/spoiler]

El problem en si, es que en el page manager no funciona el plugin captcha, por eso estoy creando un contacto.php que si lo leerá, espero se pueda.

Saludos.
Última modificación: 30 Mar, 2011, 3:28 pm por acelinux.

www.ledahost.com | Email: info[at]ledahost.com | Skype: ledahost
VPS SSD - HOSTING Y RESELLER [cPanel, Plesk, etc] - DOMINIOS - BACKUPS - WAREZ & XXX
CUPONES: Hosting 20%: memudoaleda
nentab   30 Mar, 2011, 3:32 pm
#2
Usa este xml para el PageManager, ya que este sí debería de traer el captcha. Smile

[attachment=1946]
Kevinex   30 Mar, 2011, 3:37 pm
#3
Gracias abdon, pero me parece que no me expliqué bien.

Yo uso el PageManager, con un .xml de formulario que si trae el captacha, pero al activar el plugin de captcha no me sale en el formulario Sad y el captcha que trae por defecto mybb lo desactivo, sino aparecen dos al momento de registrarse, el de defecto de mybb y el plugin captcha que activo, no sé si me entenderás Smile

O hay alguna manera, que el captcha del plugin funcione en la página de contacto del PageManager? Por lo que leí no lo lee Sad
Última modificación: 30 Mar, 2011, 3:38 pm por acelinux.

www.ledahost.com | Email: info[at]ledahost.com | Skype: ledahost
VPS SSD - HOSTING Y RESELLER [cPanel, Plesk, etc] - DOMINIOS - BACKUPS - WAREZ & XXX
CUPONES: Hosting 20%: memudoaleda
nentab   30 Mar, 2011, 3:41 pm
#4
(30 Mar, 2011, 3:37 pm)Kevinex escribió: Gracias abdon, pero me parece que no me expliqué bien.

Yo uso el PageManager, con un .xml de formulario que si trae el captacha, pero al activar el plugin de captcha no me sale en el formulario Sad y el captcha que trae por defecto mybb lo desactivo, sino aparecen dos al momento de registrarse, el de defecto de mybb y el plugin captcha que activo, no sé si me entenderás Smile

O hay alguna manera, que el captcha del plugin funcione en la página de contacto del PageManager? Por lo que leí no lo lee Sad

Aaah vale vale, al principio entendí que simplemente querías añadirle el captcha al formulario de contacto porque no tenías.

El plugin que usas es este? http://mods.mybb.com/view/recaptcha
Kevinex   30 Mar, 2011, 3:44 pm
#5
(30 Mar, 2011, 3:41 pm)abdonroda escribió:
(30 Mar, 2011, 3:37 pm)Kevinex escribió: Gracias abdon, pero me parece que no me expliqué bien.

Yo uso el PageManager, con un .xml de formulario que si trae el captacha, pero al activar el plugin de captcha no me sale en el formulario Sad y el captcha que trae por defecto mybb lo desactivo, sino aparecen dos al momento de registrarse, el de defecto de mybb y el plugin captcha que activo, no sé si me entenderás Smile

O hay alguna manera, que el captcha del plugin funcione en la página de contacto del PageManager? Por lo que leí no lo lee Sad

Aaah vale vale, al principio entendí que simplemente querías añadirle el captcha al formulario de contacto porque no tenías.

El plugin que usas es este? http://mods.mybb.com/view/recaptcha

Sí, ese uso. Se agrega en el registro, pero tengo que desactivar el captcha por defecto de mybb, sino me sale los dos! Pero al hacer eso, en el de contacto no sale, pero quiero que salga el del plugin en el formulario de contacto.
Última modificación: 30 Mar, 2011, 3:44 pm por acelinux.

www.ledahost.com | Email: info[at]ledahost.com | Skype: ledahost
VPS SSD - HOSTING Y RESELLER [cPanel, Plesk, etc] - DOMINIOS - BACKUPS - WAREZ & XXX
CUPONES: Hosting 20%: memudoaleda
nentab   30 Mar, 2011, 3:54 pm
#6
No sé si funcionará, pero prueba a añadir {$captcha} en el xml, porque acabo de ver el código del plugin de recaptcha y es la edición que hace en la plantilla member_register.
Última modificación: 30 Mar, 2011, 3:55 pm por Cluster.
DARKNESSDH_mybb_import8424   30 Mar, 2011, 4:06 pm
#7
prueba poniendo {$captcha['imagearray']}

y me dices si funciono
Kevinex   30 Mar, 2011, 4:27 pm
#8
(30 Mar, 2011, 3:54 pm)abdonroda escribió: No sé si funcionará, pero prueba a añadir {$captcha} en el xml, porque acabo de ver el código del plugin de recaptcha y es la edición que hace en la plantilla member_register.

El formulario tiene ese código, que es del default de mybb. Sad

(30 Mar, 2011, 4:06 pm)DARKNESSDH escribió: prueba poniendo {$captcha['imagearray']}

y me dices si funciono

Me tira error..

Probe con estos del plugin:

{$captcha_options}
{$captcha_image}

Pero tampoco Sad
Última modificación: 30 Mar, 2011, 4:30 pm por acelinux.

www.ledahost.com | Email: info[at]ledahost.com | Skype: ledahost
VPS SSD - HOSTING Y RESELLER [cPanel, Plesk, etc] - DOMINIOS - BACKUPS - WAREZ & XXX
CUPONES: Hosting 20%: memudoaleda
DARKNESSDH_mybb_import8424   30 Mar, 2011, 4:37 pm
#9
{$imagearray} ????????
Kevinex   30 Mar, 2011, 4:38 pm
#10
(30 Mar, 2011, 4:37 pm)DARKNESSDH escribió: {$imagearray} ????????

Yo quiero que salga el captcha del plugin que active :/

www.ledahost.com | Email: info[at]ledahost.com | Skype: ledahost
VPS SSD - HOSTING Y RESELLER [cPanel, Plesk, etc] - DOMINIOS - BACKUPS - WAREZ & XXX
CUPONES: Hosting 20%: memudoaleda
Páginas (2): 1 2   
  
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.