Tábla prefix elmaradt...

Schmidt Attila képe

Sziasztok,

készítettem lokálban egy Drupal weboldalt MySql adatbázissal. Elkészült pár perce (késznek gondolom...) és úgy döntöttem most felmásolom a helyére.

A pofon ekkor érkezett: a lokál környezetben nem adtam tábla prefixet a táblanevekhez. Most pedig ahová be kellene tennem, ott szeretném ha az adatbázisban (nem hozhatok létre újat) ezek a drupálos táblák elkülönüljenek, azaz mind (pl) drupal_ -al kezdődjenek.

Ezt utólag hogy lehet megoldani?

Jenő képe

Hozd létre az adatbázisban prefixel és a settings.php-ban is állítsd be a prefixet. Szerintem működnie kell.

0
0
Schmidt Attila képe

Nem vagyok benne biztos, hogy csak ez a módszer létezik, de mást nem tudtam gyorsan kitalálni vagy találni a googleben.

Találtam egy php szkriptet itt (pl, és máshol is hasonló megoldásokat találtam):
http://drupal.org/node/1100786

De ez NEM működött, pár dolog egyszerűen hiányzott belőle.

A szkriptel még lokálban minden táblámat átneveztem valami_tablanev-re, utána már minden sima ügy... a settings.php is...

A módosított php szkript így néz ki:

<html>
<head>
<title>MySQL Table Prefix Adder</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
 
<body>
<?php
// Check for POST data
$action = isset($_REQUEST['action'])?$_REQUEST['action']:false;
 
if (!$action) {
?>
<form name="form1" method="post" action="prefix.php">
	<table width="75%" border="0" cellspacing="2" cellpadding="2">
		<tr>
			<td>Enter database name:</td>
			<td><input name="d" type="text" id="d" size="50"></td>
		</tr>
		<tr>
			<td>Enter database user</td>
			<td><input name="u" type="text" id="u" size="50"</td>
		</tr>
		<tr>
			<td>Enter database password:</td>
			<td><input name="p" type="password" id="p" size="50"></td>
		</tr>
		<tr>
			<td>Enter New Prefix:</td>
			<td><input name="n" type="text" id="n" size="50" value="(Do not include the trailing underscore)"></td>
		</tr>
		<tr>
			<td>&nbsp;</td>
			<td>&nbsp;</td>
		</tr>
		<tr>
			<td colspan="2" align="center"><input name="action" type="hidden" id="action" value="data">
				<input type="submit" name="Submit" value="Change Table Prefixes"></td>
		</tr>
	</table>
</form>
<?php
} else {
 
	$mysql_db = $_REQUEST['d'];
	$mysql_user = $_REQUEST['u'];
	$mysql_pass = $_REQUEST['p'];
	$table_prefix = $_REQUEST['n'];
 
	// Open MySQL link
	$link = mysql_connect('localhost', $mysql_user, $mysql_pass);
	if (!$link) {
			die('Could not connect: ' . mysql_error());
	}
	echo 'Connected successfully<br><br>';
 
		$sql = "SHOW TABLES FROM $mysql_db";
		$result = mysql_query($sql);		
 
		mysql_select_db( $mysql_db, $link);
 
		while ($r = mysql_fetch_array($result)) {
			$table_old = current($r);
			$table_new = $table_prefix.$table_old;
			echo $sql = "RENAME TABLE $table_old TO $table_new;";
 
			$result_rename=mysql_query($sql);
			if (!$result_rename) 
			{
				die('Invalid query: ' . mysql_error());
			}
 
			echo "<br>";
		}
 
	//Free the resources
	mysql_close($link);
}
1
0
szantog képe

+1 update.php és minden a helyére kerül

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

Schmidt Attila képe

nem futtattam le, de minden működöt... igaz utána más okból futtattam...

0
0
szantog képe

úgy értem, nem kell ide szkript mágia, átírod a settings.php-ban a prefixet, update.php, és minden a helyére kerül. Ez 90%, 10% esély van, hogy összekeverem mással, amit csináltam. :)

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

Schmidt Attila képe

csak ennyi lett volna? :-) most már mindegy... KÖSZI!

0
0
szantog képe

Ahogy nézem, nem éppen. Épp most csinál(nék) ilyesmit, szóval nem tudom, mivel kevertem össze, vagy mit csináltam, amikor azt hittem, hogy ezt csinálom.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

aboros képe

jövőláttad :)

0
0

-
clear: both;

Beksz képe

Szia nekem egy olyan kérdésem lene hogy kéne nekem egy prefix php tudná e nekem adni 1 et mert én nem tudom mi az és hogyan kel köszönöm szépen

0
0