Keresés

Webform modullal előállított űrlap feltételhez kötött beküldése

gabriella74 képe

Sziasztok.

Segítséget kérnék abban, hogy hogyan lehet egy űrlapnál, melyet webform modullal állítottam elő csinálni olyat, hogy csak akkor lehet az űrlapot elküldeni, ha a kitöltő az űrlap utolsó kérdését a "check box" négyzetet kipipálta, ami azt jelentené, hogy a mellette lévő linket elolvasta?

Vagyis ha nincs pipa a négyzetbe akkor a "Beküldés" gombra kattintás után, kiírja a Drupal, hogy azt a "check boxot" ki kell pipálnia, mert addíg nem lehet elküldeni az űrlapot.

Segítségeket előre is köszönöm.

Gabi

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 

meglévő cck-s galériába tömeges képfeltöltés

vvd képe

Sziasztok!

Utánakerestem és nem találtam a fórumok között semmilyen megoldást, úgyhogy gondolom nincs is. De gondoltam egy próbát megér. A tárgy nagyjából összefoglalja miről lenne szó. Adott egy cck-s, imagefield-s galéria, aminél a megrendelő most tömeges képfeltöltést akar. Tehát már vannak meglévő galériák és most azt szeretné, hogy csináljam meg, hogy több képet is fel tudjon tölteni egyszerre. Az image modullal láttam erre megoldást, de az most nem játszik, mert meg kell tartani a meglévő képeket és galériákat is. Lenne erre egyszerű (vagy bármilyen) megoldás?

Köszönöm ha válaszoltok!

Varga V Dániel

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 

Drupal 7 localhost

plebanos képe

Localhost-ra nem tudom telepíteni a drupal 7.2-t. Nem látja a setting.php-t, nem tud létrehozni files mappát.

* Szerver: Localhost via UNIX socket
* Szerver verzió: 5.1.56
* Protokoll verzió: 10
* Felhasználó: root@localhost
* MySQL karakterkészlet: UTF-8 Unicode (utf8)
# Apache/2.2.17 (Fedora)
# MySQL kliens verzió: 5.1.56
# PHP-kiterjesztés: mysqli

A tárhelyen(dataglobe) hibátlanul műxik, hasonló szerver-paraméterekkel.
Szerintem a beállításokban van a hiba...

Drupal verzió: 

Drupal 6 frissítése Drupal 7 re. Gondok a frissítéssel.

biggabo19 képe

Ödv Mindenkinek!

Egy érdekesség kategóriájába tartozó esettel kapcsolatban keresem fel ismét a nagyokat itt a Drupal.hu keretein belül.

A Drupal 6os leszerettem volna váltani az új Drupal 7es magra. Ezzel nem is lett volna semmi gond. A kézikönyvnek megfelelően jártam el, azaz részletezem:

A éles honlap adatait FileZilla FTP klienssel lementettem, az sql adattáblát is kimentettem. A váltásra úgy gondoltam, hogy az XAMPP 1.7.4-es legújabb webszerverét felhasználva végzem el, mondván, nem elrontva ezzel az eredeti oldalt (Ha itt megy minden, akkor az élesen is így járok el a váltással).

1. A sminkeknél a GARLAND (alapértelmezett) lett visszaállítva.
2. Beléptem a teljes körű root felhasználóként az oldalra (phpMyAdmin) és mentettem adatbázist.
3. Lementettem a tárhely subdomain mappáját, melyben az oldal megtalálható volt.
4. Beüzemeltem az oldalt a lokális webszerveren
5. Ennek megfelelően átírtam a settinsg.php adatbázis kapcsolatait és egyúttal az adatbázis függvény értékét is módosítottam FALSE értékről TRUE értékre, hogy engedélyezzem számára a frissítést (Az oldal mindezt követően üzemelt a Drupal 6 mag alatt).
6. A "sites" mappa kivételével töröltem mindent.
7. Letöltöttem a 7.2 core Drupal 7 magot.
8. Letöltöttem a hu nyelv fájlt is.
9. A "sites" mappa kivételével feltöltöttem a 7.2 osszes állományát a webszerverre (esetemben most az XAMPP mappájába)
10. Felkerült a nyelvi fáj is.

Ekkor megpróbáltam az update.php fájlt futtatni, de a webszerver nem reagál, SZERVERHIBÁRA hivatkozik (ez a böngésző válasza).
Továbbá a kézikönyv taglalja, hogy esetleg az új settings.php kell neki és ennek megfelelően ki is töltöttem az új adatbázis adatoknak megfelelően a D7 setting.php fájlot.

Ismételten szerverhiba jelentkezik. Ha visszamásolom a régi D6 fájlokat és a settings php D6os verzióját, akkor az oldal tökéletesen üzemel.

Pár kérdés merült fel bennem csupán, ami okozhatja a gondot.

A modulokat előzetesen nem kell-e kikapcsolni a D6 alatt?
A modulokat előtte nem kell-e kicserélni a D7-es verziónak megfelelőre, és azokat feltölteni?

Vagy esetleg mi lett a probléma kulcsa? Várom segítő válaszaitokat.

Drupal verzió: 
Fórum: 

phpfreechat popup

makgab képe

Üdv,

A phpfreechat-hez van egy minta, hogy lehet popup ablakba tenni a chat-et: itt

Betettem egy tartalomba:

<p>
Let us
<a href=""
   onclick="window.open('demo65_chat_popup.php','chat_popup','toolbar=0,menubar=0,scrollbars=1,width=800,height=650'); return false;">
start chatting
</a>
</p>
 
<?php if (isset($_GET['profil'])) { ?>
  <p>Here is the user (id=<?php echo $_GET['profil']; ?>)profil</p>
<?php } ?>

A demo65_chat_popup.php-t a phpfreechat/phpfreechat könytárba és módosítottam a

require_once dirname(__FILE__)."/../src/phpfreechat.class.php";

sort:
require_once dirname(__FILE__)."/src/phpfreechat.class.php";

Mit kell csinálni még, hogy a Drupal-ba integrált freechat legyen a popup ablakban? Most így egy külön chat nyílik meg.

Drupal verzió: 

nézetbe ágyazott beviteli mező

danart képe

Sziasztok!
Egy nézettel előállított táblázat minden sorába szeretnék egy beviteli mezőt. (adatbázis oldalról megközelítve minden flag_content sorhoz hozzá kéne rendelni egy beviteli mezőt)
Mivel a nézet alapja flag modul generálta tartalom, így az editable field (ami egyébként nagyszerű képességekkel rendelkezik) nem megfelelő. (tartalomtípushoz adott mezőt tud szerkeszthetőként kezelni)

Az editable field után a webform nézetbe ágyazásával próbálkoztam.
Készítettem egy űrlapot egy egyszerű szöveges beviteli mezővel, de ezt nem tudtam beleágyazni a nézetbe.

Találtam egy views embed form elnevezésű modult. Ezzel nem jutok egyről a kettőre. Nem világos, hogy működik.
Van valakinek tapasztalata a fenti modullal?

Esetleg egyéb megoldási javaslat, amire nem gondoltam?
Köszönöm a segítséget!

Üdv.:
Dani

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 

Taxonomy image kiiratása

batka78 képe

Sziasztok!

Vagy egy egyedi tartalomtípusom. Ehhez csináltam egy node-tartalomtipus-tpl.php fájlt.
Ebben szeretném az adott node-hoz rendelt taxonomy image-kat kiiratni, de sajnos sehol nem találom hogy lehetne ezt megcsinálni.

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 

dinamikus érték

gülüke képe

Sziasztok!

Adott egy tartalomtípus, melynek van egy ár mezője. Szeretném, ha beírja a tartalmat beküldő user az értéket ebbe a mezőbe, akkor mellette megjelenne egy kis szöveg, ami a mező értéke alapján számít ki egy végeredményt, pl ha a beírt érték mondjuk 1000 alatti, akkor kiírja az értéket, ami megszoroz mondjuk 1.01-gyel, más esetekben mást :)
Conditional Field-del próbálkoztam, meg a Dynamic field nevű modulkával, de nem egészen azt teszik, amit én szeretnék. Nekem tartalom beküldés közben lenne erre szükségem! (gondolom az ajax lesz a jó irány, csak hátha van valami kulcsra kész ötlet itt)
Ha a leírásom alapján nehéz megérteni mit szeretnék, akkor gondoljatok a standard register page-re, ahol jelzi, hogy milyen erősségű a jelszó. Na hasonlóra gondolok elvben.

Előre is köszönöm, üdv gülüke.

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 

EasyPHP probléma

tzotyu képe

Sziasztok!
Korábban már használtam az easyphp-t (nekem az XAMPP-vel sok gond volt, lehet, hogy csak én vagyok béna hozzá, de az easyphp-vel elsőre ment minden), de újra kellett telepítenem a gépemet, így az easyphp-t is. Az 6.3.6.0. verziót töltöttem le és elkezdem telepíteni a Drupal 6-ot. Korábban semmi problémám nem volt a telepítésnél, most viszont ezt a hibaüzenetet kaptam:

'An error occurred. http://127.0.0.1:8888/drupal_hm/install.php?locale=hu&profile=default&id...
Fatal error: Maximum execution time of 30 seconds exceeded in C:\Program Files\EasyPHP-5.3.6.0\www\drupal_hm\includes\database.mysqli.inc on line 114
'

Megnéztem a 114. sort a database.mysqli.inc-ben, de nem sokat tudtam vele kezdeni. Azért beszúrom ennek a kódját:

<?php
 
/**
 * @file
 * Database interface code for MySQL database servers.
 */
 
/**
 * @ingroup database
 * @{
 */
 
// Include functions shared between mysql and mysqli.
require_once './includes/database.mysql-common.inc';
 
/**
 * Report database status.
 */
function db_status_report($phase) {
  $t = get_t();
 
  $version = db_version();
 
  $form['mysql'] = array(
    'title' => $t('MySQL database'),
    'value' => ($phase == 'runtime') ? l($version, 'admin/reports/status/sql') : $version,
  );
 
  if (version_compare($version, DRUPAL_MINIMUM_MYSQL) < 0) {
    $form['mysql']['severity'] = REQUIREMENT_ERROR;
    $form['mysql']['description'] = $t('Your MySQL Server is too old. Drupal requires at least MySQL %version.', array('%version' => DRUPAL_MINIMUM_MYSQL));
  }
 
  return $form;
}
 
/**
 * Returns the version of the database server currently in use.
 *
 * @return Database server version
 */
function db_version() {
  list($version) = explode('-', mysql_get_server_info());
  return $version;
}
 
/**
 * Initialize a database connection.
 */
function db_connect($url) {
  $url = parse_url($url);
 
  // Check if MySQL support is present in PHP
  if (!function_exists('mysql_connect')) {
    _db_error_page('Unable to use the MySQL database because the MySQL extension for PHP is not installed. Check your <code>php.ini
to see how you can enable it.');
}

// Decode url-encoded information in the db connection string
$url['user'] = urldecode($url['user']);
// Test if database url has a password.
$url['pass'] = isset($url['pass']) ? urldecode($url['pass']) : '';
$url['host'] = urldecode($url['host']);
$url['path'] = urldecode($url['path']);

// Allow for non-standard MySQL port.
if (isset($url['port'])) {
$url['host'] = $url['host'] .':'. $url['port'];
}

// - TRUE makes mysql_connect() always open a new link, even if
// mysql_connect() was called before with the same parameters.
// This is important if you are using two databases on the same
// server.
// - 2 means CLIENT_FOUND_ROWS: return the number of found
// (matched) rows, not the number of affected rows.
$connection = @mysql_connect($url['host'], $url['user'], $url['pass'], TRUE, 2);
if (!$connection || !mysql_select_db(substr($url['path'], 1))) {
// Show error screen otherwise
_db_error_page(mysql_error());
}

// Force MySQL to use the UTF-8 character set. Also set the collation, if a
// certain one has been set; otherwise, MySQL defaults to 'utf8_general_ci'
// for UTF-8.
if (!empty($GLOBALS['db_collation'])) {
mysql_query('SET NAMES utf8 COLLATE '. $GLOBALS['db_collation'], $connection);
}
else {
mysql_query('SET NAMES utf8', $connection);
}

return $connection;
}

/**
* Helper function for db_query().
*/
function _db_query($query, $debug = 0) {
global $active_db, $queries, $user;

if (variable_get('dev_query', 0)) {
list($usec, $sec) = explode(' ', microtime());
$timer = (float)$usec + (float)$sec;
// If devel.module query logging is enabled, prepend a comment with the username and calling function
// to the SQL string. This is useful when running mysql's SHOW PROCESSLIST to learn what exact
// code is issueing the slow query.
$bt = debug_backtrace();
// t() may not be available yet so we don't wrap 'Anonymous'.
$name = $user->uid ? $user->name : variable_get('anonymous', 'Anonymous');
// str_replace() to prevent SQL injection via username or anonymous name.
$name = str_replace(array('*', '/'), '', $name);
$query = '/* '. $name .' : '. $bt[2]['function'] .' */ '. $query;
}

$result = mysql_query($query, $active_db);

if (variable_get('dev_query', 0)) {
$query = $bt[2]['function'] ."\n". $query;
list($usec, $sec) = explode(' ', microtime());
$stop = (float)$usec + (float)$sec;
$diff = $stop - $timer;
$queries[] = array($query, $diff);
}

if ($debug) {
print '

query: '. $query .'
error:'. mysql_error($active_db) .'

';
}

if (!mysql_errno($active_db)) {
return $result;
}
else {
// Indicate to drupal_error_handler that this is a database error.
${DB_ERROR} = TRUE;
trigger_error(check_plain(mysql_error($active_db) ."\nquery: ". $query), E_USER_WARNING);
return FALSE;
}
}

/**
* Fetch one result row from the previous query as an object.
*
* @param $result
* A database query result resource, as returned from db_query().
* @return
* An object representing the next row of the result, or FALSE. The attributes
* of this object are the table fields selected by the query.
*/
function db_fetch_object($result) {
if ($result) {
return mysql_fetch_object($result);
}
}

/**
* Fetch one result row from the previous query as an array.
*
* @param $result
* A database query result resource, as returned from db_query().
* @return
* An associative array representing the next row of the result, or FALSE.
* The keys of this object are the names of the table fields selected by the
* query, and the values are the field values for this result row.
*/
function db_fetch_array($result) {
if ($result) {
return mysql_fetch_array($result, MYSQL_ASSOC);
}
}

/**
* Return an individual result field from the previous query.
*
* Only use this function if exactly one field is being selected; otherwise,
* use db_fetch_object() or db_fetch_array().
*
* @param $result
* A database query result resource, as returned from db_query().
*
* @return
* The resulting field or FALSE.
*/
function db_result($result) {
if ($result && mysql_num_rows($result) > 0) {
// The mysql_fetch_row function has an optional second parameter $row
// but that can't be used for compatibility with Oracle, DB2, etc.
$array = mysql_fetch_row($result);
return $array[0];
}
return FALSE;
}

/**
* Determine whether the previous query caused an error.
*/
function db_error() {
global $active_db;
return mysql_errno($active_db);
}

/**
* Determine the number of rows changed by the preceding query.
*/
function db_affected_rows() {
global $active_db;
return mysql_affected_rows($active_db);
}

/**
* Runs a limited-range query in the active database.
*
* Use this as a substitute for db_query() when a subset of the query is to be
* returned.
* User-supplied arguments to the query should be passed in as separate parameters
* so that they can be properly escaped to avoid SQL injection attacks.
*
* @param $query
* A string containing an SQL query.
* @param ...
* A variable number of arguments which are substituted into the query
* using printf() syntax. The query arguments can be enclosed in one
* array instead.
* Valid %-modifiers are: %s, %d, %f, %b (binary data, do not enclose
* in '') and %%.
*
* NOTE: using this syntax will cast NULL and FALSE values to decimal 0,
* and TRUE values to decimal 1.
*
* @param $from
* The first result row to return.
* @param $count
* The maximum number of result rows to return.
* @return
* A database query result resource, or FALSE if the query was not executed
* correctly.
*/
function db_query_range($query) {
$args = func_get_args();
$count = array_pop($args);
$from = array_pop($args);
array_shift($args);

$query = db_prefix_tables($query);
if (isset($args[0]) and is_array($args[0])) { // 'All arguments in one array' syntax
$args = $args[0];
}
_db_query_callback($args, TRUE);
$query = preg_replace_callback(DB_QUERY_REGEXP, '_db_query_callback', $query);
$query .= ' LIMIT '. (int)$from .', '. (int)$count;
return _db_query($query);
}

/**
* Runs a SELECT query and stores its results in a temporary table.
*
* Use this as a substitute for db_query() when the results need to stored
* in a temporary table. Temporary tables exist for the duration of the page
* request.
* User-supplied arguments to the query should be passed in as separate parameters
* so that they can be properly escaped to avoid SQL injection attacks.
*
* Note that if you need to know how many results were returned, you should do
* a SELECT COUNT(*) on the temporary table afterwards. db_affected_rows() does
* not give consistent result across different database types in this case.
*
* @param $query
* A string containing a normal SELECT SQL query.
* @param ...
* A variable number of arguments which are substituted into the query
* using printf() syntax. The query arguments can be enclosed in one
* array instead.
* Valid %-modifiers are: %s, %d, %f, %b (binary data, do not enclose
* in '') and %%.
*
* NOTE: using this syntax will cast NULL and FALSE values to decimal 0,
* and TRUE values to decimal 1.
*
* @param $table
* The name of the temporary table to select into. This name will not be
* prefixed as there is no risk of collision.
* @return
* A database query result resource, or FALSE if the query was not executed
* correctly.
*/
function db_query_temporary($query) {
$args = func_get_args();
$tablename = array_pop($args);
array_shift($args);

$query = preg_replace('/^SELECT/i', 'CREATE TEMPORARY TABLE '. $tablename .' Engine=HEAP SELECT', db_prefix_tables($query));
if (isset($args[0]) and is_array($args[0])) { // 'All arguments in one array' syntax
$args = $args[0];
}
_db_query_callback($args, TRUE);
$query = preg_replace_callback(DB_QUERY_REGEXP, '_db_query_callback', $query);
return _db_query($query);
}

/**
* Returns a properly formatted Binary Large OBject value.
*
* @param $data
* Data to encode.
* @return
* Encoded data.
*/
function db_encode_blob($data) {
global $active_db;
return "'". mysql_real_escape_string($data, $active_db) ."'";
}

/**
* Returns text from a Binary Large Object value.
*
* @param $data
* Data to decode.
* @return
* Decoded data.
*/
function db_decode_blob($data) {
return $data;
}

/**
* Prepare user input for use in a database query, preventing SQL injection attacks.
*/
function db_escape_string($text) {
global $active_db;
return mysql_real_escape_string($text, $active_db);
}

/**
* Lock a table.
*/
function db_lock_table($table) {
db_query('LOCK TABLES {'. db_escape_table($table) .'} WRITE');
}

/**
* Unlock all locked tables.
*/
function db_unlock_tables() {
db_query('UNLOCK TABLES');
}

/**
* Check if a table exists.
*
* @param $table
* The name of the table.
*
* @return
* TRUE if the table exists, and FALSE if the table does not exist.
*/
function db_table_exists($table) {
return (bool) db_fetch_object(db_query("SHOW TABLES LIKE '{". db_escape_table($table) ."}'"));
}

/**
* Check if a column exists in the given table.
*
* @param $table
* The name of the table.
* @param $column
* The name of the column.
*
* @return
* TRUE if the column exists, and FALSE if the column does not exist.
*/
function db_column_exists($table, $column) {
return (bool) db_fetch_object(db_query("SHOW COLUMNS FROM {". db_escape_table($table) ."} LIKE '". db_escape_table($column) ."'"));
}

/**
* @} End of "ingroup database".
*/

Mit lehet ezzel tenni? :O
Köszönöm!